{"projects": [{"components": [{"description": "Command line interface", "name": "CLI"}, {"description": "Contributions from the community", "name": "Community"}, {"description": "", "name": "DOCS"}, {"description": "", "name": "PE"}, {"description": "", "lead": "623cfdfb8d8b9c0068b93e3c", "name": "QA"}, {"description": "", "lead": "623c0cbf1c7f6a007049e5b9", "name": "RE"}, {"description": "Anything that needs UX attention", "lead": "557058:38a3870a-6feb-4b94-8d1d-1b88321f4a93", "name": "UX"}, {"description": "", "lead": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "name": "Windows"}], "description": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "externalName": "Hiera", "issues": [{"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2023-01-03T04:11:00.000000", "creator": "557058:55399b77-3824-47d7-b99d-a0113bcca913", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6fed6e79"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0lc8x:"}], "description": "Within YAML it is possible to specify a hash key as an array:\n{code:java}\ncat yaml.yaml\u00a0\n---\nhash:\n\u00a0 ['key1', 'key2']:\n\u00a0 \u00a0 param: 'value' {code}\nOne can use the YAML.load_file method:\n{code:java}\nirb\u00a0\n2.5.8 :001 > require 'yaml'\n\u00a0=> true\u00a0\n2.5.8 :002 > data= YAML.load_file('yaml.yaml')\n\u00a0=> {\"hash\"=>{[\"key1\", \"key2\"]=>{\"param\"=>\"value\"}}}\u00a0\n2.5.8 :003 > puts data\n{\"hash\"=>{[\"key1\", \"key2\"]=>{\"param\"=>\"value\"}}}\n\u00a0=> nil\u00a0\n2.5.8 :004 > exit{code}\nWithin Hiera YAML Data, the usage of an array as Hash Key title is not possible:\n\nRunning Puppet lookup explain:\n{noformat}\nSearching for \"hash\"\n\u00a0 Global Data Provider (hiera configuration version 5)\n\u00a0 \u00a0 Using configuration \"/etc/puppetlabs/puppet/hiera.yaml\"\n\u00a0 \u00a0 Hierarchy entry \"Classifier Configuration Data\"\n\u00a0 \u00a0 \u00a0 No such key: \"hash\"\n\u00a0 Environment Data Provider (hiera configuration version 5)\n\u00a0 \u00a0 Using configuration \"/etc/puppetlabs/code/environments/production/hiera.yaml\"\n\u00a0 \u00a0 Hierarchy entry \"yaml hierarchy\"\n\u00a0 \u00a0 \u00a0 Path \"/etc/puppetlabs/code/environments/production/data/nodes/puppet5.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Original path: \"nodes/%{facts.networking.hostname}.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 No such key: \"hash\"\n\u00a0 \u00a0 \u00a0 Path \"/etc/puppetlabs/code/environments/production/data/role/-.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Original path: \"role/%{facts.external_facts.role}-%{facts.external_facts.env}.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Path not found\n\u00a0 \u00a0 \u00a0 Path \"/etc/puppetlabs/code/environments/production/data/role/.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Original path: \"role/%{facts.external_facts.role}.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Path not found\n\u00a0 \u00a0 \u00a0 Path \"/etc/puppetlabs/code/environments/production/data/role/.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Original path: \"role/%{trusted.extensions.pp_role}.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Path not found\n\u00a0 \u00a0 \u00a0 Path \"/etc/puppetlabs/code/environments/production/data/os/RedHat.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Original path: \"os/%{facts.os.family}.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Path not found\n\u00a0 \u00a0 \u00a0 Path \"/etc/puppetlabs/code/environments/production/data/zone/.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Original path: \"zone/%{facts.external_facts.zone}.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Path not found\n\u00a0 \u00a0 \u00a0 Path \"/etc/puppetlabs/code/environments/production/data/common.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Original path: \"common.yaml\"\n\u00a0 \u00a0 \u00a0 \u00a0 Found key: \"hash\" value: nil{noformat}\nWhen adding also a string key only the string key gets returned:\n{code:java}\nhash:\n\u00a0 'ele1':\n\u00a0 \u00a0 param: 'value'\n\u00a0 ['key1', 'key2']:\n\u00a0 \u00a0 'param': 'value'\u00a0 {code}\nReturn value:\n{code:java}\n\u00a0 \u00a0 \u00a0 \u00a0 Found key: \"hash\" value: {\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \"ele1\" => {\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \"param\" => \"value\"\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 } {code}\nEspecially in combination with stdlib::manage::create:resources an Array as Hash Key makes sense:\n{code:java}\nstdlib::manage::create_resources:\n  package:\n    ['less', 'vim', 'htop']:\n      ensure: present\n{code}\nBut that is not (yet) possible.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53567", "fixedVersions": [], "id": "53567", "issueType": "Improvement", "key": "HI-637", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:55399b77-3824-47d7-b99d-a0113bcca913", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow usage of Hash Keys as Array", "timeSpent": "PT0S", "updated": "2023-03-20T14:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "5a1beb0b007eb21a79e5d6de", "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Passed in https://github.com/puppetlabs/hiera/actions/runs/3220916000", "created": "2022-10-11T09:24:00.000000"}], "components": [], "created": "2022-10-07T11:15:00.000000", "creator": "557058:91233464-4152-4228-81dd-172d43a52a03", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31747408"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-4664"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3z5:r9x"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_73176917_*|*_1_*:*_1_*:*_13564387_*|*_10007_*:*_1_*:*_251056908_*|*_3_*:*_1_*:*_1165007_*|*_5_*:*_1_*:*_0"}], "description": "Update hiera to test against Ruby 3.2 preview 1 like in FACT-3153", "epicLinkSummary": "Puppet 8", "estimate": "PT0S", "externalId": "53960", "fixedVersions": ["HI 3.11.0"], "id": "53960", "issueType": "Task", "key": "HI-635", "labels": [], "originalEstimate": "PT0S", "parent": "57676", "parentSummary": "Puppet 8", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:91233464-4152-4228-81dd-172d43a52a03", "resolution": "Fixed", "resolutionDate": "2022-10-11T09:24:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Test against Ruby 3.2 preview 1", "timeSpent": "PT0S", "updated": "2023-01-13T11:24:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:91233464-4152-4228-81dd-172d43a52a03", "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Need to pull this in because hiera's install.rb doesn't run on Ruby 3.x, so we can't build puppet-agent packages.", "created": "2023-01-11T23:22:00.000000"}], "components": [], "created": "2022-10-07T10:16:00.000000", "creator": "557058:91233464-4152-4228-81dd-172d43a52a03", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@fd413cd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-4664"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3fk:i0bu3"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_34332_*|*_1_*:*_1_*:*_8345097609_*|*_10007_*:*_1_*:*_49621705_*|*_5_*:*_1_*:*_0"}], "description": "-Update the gemspec to require ruby 2.7 or greater-\nUpdate the github actions to remove older ruby versions, change Ruby 3.2 to final release, and update the JRuby version in tests.\nUpdate branch protection rules\nIncrement the Y version component\n\nIf we require ruby 2.7 or greater, then we won't be able to build puppet-agent#6.x packages. So for now, let's just drop 2.5 from CI and get it ready to run in ruby 3.2, e.g. puppet apply", "epicLinkSummary": "Puppet 8", "estimate": "PT0S", "externalId": "54059", "fixedVersions": [], "id": "54059", "issueType": "Task", "key": "HI-634", "labels": [], "originalEstimate": "PT0S", "parent": "57676", "parentSummary": "Puppet 8", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:91233464-4152-4228-81dd-172d43a52a03", "resolution": "Fixed", "resolutionDate": "2023-01-12T13:09:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Drop support for ruby < 2.7 in CI", "timeSpent": "PT0S", "updated": "2023-01-12T13:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:81a73de1-7f52-49cd-b0b0-46c1b147202a", "body": "This would need to be done in the eyaml module since it can read plain yaml as well as the specially encoded eyaml content. Many users rely on eyaml backend to also read plain text so cannot be done in hiera as it would not know if the source was encoded or not.", "created": "2022-10-02T15:20:00.000000"}], "components": [], "created": "2022-09-19T09:00:00.000000", "creator": "70121:13e9ba64-d0e3-4303-948b-08ee1e68f2de", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1bea89d4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0jryp:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Oct/22"}], "description": "When content is decoded from an `eyaml` backend, hiera should automatically mark it as a Sensitive data type.\u00a0 Currently it is just converted to the backing data type.\n\nThis can lead to unintended disclosure of the encrypted values within modules.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53907", "fixedVersions": [], "id": "53907", "issueType": "Improvement", "key": "HI-633", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:13e9ba64-d0e3-4303-948b-08ee1e68f2de", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Content from eyaml should be Sensitive by default", "timeSpent": "PT0S", "updated": "2022-10-02T15:20:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "5a1beb0b007eb21a79e5d6de", "attachments": [], "comments": [], "components": [], "created": "2022-09-02T10:51:00.000000", "creator": "5a1beb0b007eb21a79e5d6de", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "The Hiera repository is no longer using Ubuntu 18.04 runners for GitHub Actions"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@43021237"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-4650"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0jg15:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_79305572_*|*_1_*:*_1_*:*_357650473_*|*_10007_*:*_1_*:*_2977557_*|*_3_*:*_1_*:*_1075776_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5614020231"}], "description": "Update the GitHub runners in Hiera from Ubuntu 18.04 to a more recent supported Ubuntu version (20.04 or 22.04)", "duedate": "2023-04-01T00:00:00.000000", "epicLinkSummary": "Migrate off Ubuntu 18.04 GitHub Action Runners", "estimate": "PT0S", "externalId": "53740", "fixedVersions": ["HI 3.11.0"], "id": "53740", "issueType": "Task", "key": "HI-636", "labels": [], "originalEstimate": "PT0S", "parent": "55849", "parentSummary": "Migrate off Ubuntu 18.04 GitHub Action Runners", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "5a1beb0b007eb21a79e5d6de", "resolution": "Fixed", "resolutionDate": "2022-11-11T11:48:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update Ubuntu Runners for Hiera", "timeSpent": "PT0S", "updated": "2022-11-30T17:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Puppet 3.6.2 is extremely EOL please update to a newer version 6 or 7 and reach out in https://puppetcommunity.slack.com if you have questions ", "created": "2022-07-22T09:47:00.000000"}], "components": ["CLI"], "created": "2022-07-21T03:31:00.000000", "creator": "63d2e0fc5a23f7e717cead5e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67e4229b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0hrs9:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jul/22"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_108972524_*|*_6_*:*_1_*:*_0"}], "description": "We have puppet master and agent configured in same machine(AWS vmware).\nWhile running below command:\npuppet agent -tv \nWe get below error:( Same command is working fine on another environment)\nInfo: Retrieving plugin\nInfo: Loading facts in /etc/puppet/modules/concat/lib/facter/concat_basedir.rb\nInfo: Loading facts in /etc/puppet/modules/stdlib/lib/facter/facter_dot_d.rb\nInfo: Loading facts in /etc/puppet/modules/stdlib/lib/facter/pe_version.rb\nInfo: Loading facts in /etc/puppet/modules/stdlib/lib/facter/puppet_vardir.rb\nInfo: Loading facts in /etc/puppet/modules/stdlib/lib/facter/root_home.rb\nInfo: Loading facts in /var/lib/puppet/lib/facter/facter_dot_d.rb\nInfo: Loading facts in /var/lib/puppet/lib/facter/root_home.rb\nInfo: Loading facts in /var/lib/puppet/lib/facter/puppet_vardir.rb\nInfo: Loading facts in /var/lib/puppet/lib/facter/pe_version.rb\nInfo: Loading facts in /var/lib/puppet/lib/facter/concat_basedir.rb\nError: Could not retrieve catalog from remote server: Error 400 on SERVER: undefined method `empty?' for nil:NilClass at /etc/puppet/modules/amd_amfv_sw_prereq/manifests/classes/amfv_sw_prereq_rpms.pp:25 on node centos_32592\n/usr/share/ruby/vendor_ruby/puppet/indirector/rest.rb:207:in `is_http_200?'\n/usr/share/ruby/vendor_ruby/puppet/indirector/rest.rb:100:in `find'\n/usr/share/ruby/vendor_ruby/puppet/indirector/indirection.rb:201:in `find'\n/usr/share/ruby/vendor_ruby/puppet/configurer.rb:256:in `block in retrieve_new_catalog'\n/usr/share/ruby/vendor_ruby/puppet/util.rb:327:in `block in thinmark'\n/usr/share/ruby/benchmark.rb:296:in `realtime'\n/usr/share/ruby/vendor_ruby/puppet/util.rb:326:in `thinmark'\n/usr/share/ruby/vendor_ruby/puppet/configurer.rb:255:in `retrieve_new_catalog'\n/usr/share/ruby/vendor_ruby/puppet/configurer.rb:60:in `retrieve_catalog'\n/usr/share/ruby/vendor_ruby/puppet/configurer.rb:103:in `prepare_and_retrieve_catalog'\n/usr/share/ruby/vendor_ruby/puppet/configurer.rb:170:in `run'\n/usr/share/ruby/vendor_ruby/puppet/agent.rb:47:in `block (4 levels) in run'\n/usr/share/ruby/vendor_ruby/puppet/agent/locker.rb:20:in `lock'\n/usr/share/ruby/vendor_ruby/puppet/agent.rb:47:in `block (3 levels) in run'\n/usr/share/ruby/vendor_ruby/puppet/agent.rb:117:in `with_client'\n/usr/share/ruby/vendor_ruby/puppet/agent.rb:44:in `block (2 levels) in run'\n/usr/share/ruby/vendor_ruby/puppet/agent.rb:82:in `run_in_fork'\n/usr/share/ruby/vendor_ruby/puppet/agent.rb:43:in `block in run'\n/usr/share/ruby/vendor_ruby/puppet/application.rb:179:in `call'\n/usr/share/ruby/vendor_ruby/puppet/application.rb:179:in `controlled_run'\n/usr/share/ruby/vendor_ruby/puppet/agent.rb:41:in `run'\n/usr/share/ruby/vendor_ruby/puppet/application/agent.rb:355:in `onetime'\n/usr/share/ruby/vendor_ruby/puppet/application/agent.rb:321:in `run_command'\n/usr/share/ruby/vendor_ruby/puppet/application.rb:371:in `block (2 levels) in run'\n/usr/share/ruby/vendor_ruby/puppet/application.rb:477:in `plugin_hook'\n/usr/share/ruby/vendor_ruby/puppet/application.rb:371:in `block in run'\n/usr/share/ruby/vendor_ruby/puppet/util.rb:479:in `exit_on_fail'\n/usr/share/ruby/vendor_ruby/puppet/application.rb:371:in `run'\n/usr/share/ruby/vendor_ruby/puppet/util/command_line.rb:137:in `run'\n/usr/share/ruby/vendor_ruby/puppet/util/command_line.rb:91:in `execute'\n/usr/bin/puppet:8:in `<main>'\nWarning: Not using cache on failed catalog\nError: Could not retrieve catalog; skipping run\n", "environment": "\u00a0cat /etc/os-release\nNAME=\"Red Hat Enterprise Linux Server\"\nVERSION=\"7.9 (Maipo)\"\n\n\ngem list\n\n*** LOCAL GEMS ***\n\nbigdecimal (1.2.0)\nhash-deep-merge (0.1.1)\nhiera-eyaml (2.0.2)\nhighline (1.6.21)\nio-console (0.4.2)\njson (1.7.7)\noptimist (3.0.1)\npsych (2.0.0)\npuppet-module (0.3.4)\nrdoc (4.0.0)\nrgen (0.6.6)\ntrollop (2.0)\n\n\u00a0\n\n\u00a0hiera --version\n1.3.4\n\n\u00a0puppet --version\n3.6.2\n\nruby --version\nruby 2.0.0p648 (2015-12-16)\u00a0\n\n[x86_64-linux]\n\n\u00a0\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53794", "fixedVersions": ["HI 3.3.0"], "id": "53794", "issueType": "Bug", "key": "HI-632", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Medium (migrated)", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "63d2e0fc5a23f7e717cead5e", "resolution": "Incomplete", "resolutionDate": "2022-07-22T09:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": " While running puppet agent :Error: Could not retrieve catalog from remote server: Error 400 on SERVER: undefined method `empty?' for nil:NilClass at /etc/puppet/modules/amd_amfv_sw_prereq/manifests/classes/amfv_sw_prereq_rpms.pp:25 on node centos_32592", "timeSpent": "PT0S", "updated": "2022-07-22T09:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2022-05-04T11:54:00.000000", "creator": "70121:13e9ba64-d0e3-4303-948b-08ee1e68f2de", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7c14b21d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0g6li:"}], "description": "For most cases, a deep merge is sufficient.\u00a0 However, there are a few minor workflows where having a knockout prefix for unique lists would be very advantageous.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53712", "fixedVersions": [], "id": "53712", "issueType": "New Feature", "key": "HI-631", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:13e9ba64-d0e3-4303-948b-08ee1e68f2de", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "merge unique with a knockout prefix", "timeSpent": "PT0S", "updated": "2022-05-04T11:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "62438586fd5e4500704327b2", "body": "To reproduce:\n\n\u00a0\n\nhiera.yaml:\n\u2014\nversion: 5\n\ndefaults:\n\u00a0 datadir: \u00a0 /etc/puppetlabs/code/environments/%\\{::environment}/hieradata\n\u00a0 data_hash: yaml_data\n\nhierarchy:\n\u00a0 - name: \u00a0\"Nodes\"\n\u00a0 \u00a0 path: \u00a0\"nodes/%\\{::fqdn}.yaml\"\n\u00a0 - name: \u00a0\"Domains\"\n\u00a0 \u00a0 globs:\n\u00a0 \u00a0 \u00a0 - \"domains/%\\{::domain}/*.yaml\"\n\u00a0 - name: \u00a0\"Operating System Release\"\n\u00a0 \u00a0 path: \u00a0\"%\\{::operatingsystem}-%\\{::operatingsystemrelease}.yaml\"\n\u00a0 - name: \u00a0\"Operating System\"\n\u00a0 \u00a0 path: \u00a0\"%\\{::operatingsystem}.yaml\"\n\u00a0 - name: \u00a0\"Kernel\"\n\u00a0 \u00a0 path: \u00a0\"%\\{::kernel}.yaml\"\n\u00a0 - name: \u00a0\"Operating System Platform\"\n\u00a0 \u00a0 path: \u00a0\"%\\{::operatingsystem}-%\\{::virtual}.yaml\"\n\u00a0 - name: \u00a0\"Roles\"\n\u00a0 \u00a0 path: \u00a0\"roles.yaml\"\n\u00a0 - name: \u00a0\"Applications\"\n\u00a0 \u00a0 globs:\n\u00a0 \u00a0 \u00a0 - \"apps/*.yaml\"\n\u00a0 - name: \u00a0\"Common settings\"\n\u00a0 \u00a0 path: \u00a0\"common.yaml\"\n\n\u00a0\n\ncommon.yaml:\n\u2014\nlookup_options:\n\u00a0 knockout:\n\u00a0 \u00a0 merge:\n\u00a0 \u00a0 \u00a0 strategy: \u00a0 \u00a0 \u00a0 \u00a0 \u00a0'deep'\n\u00a0 \u00a0 \u00a0 knockout_prefix: \u00a0 '\u2013'\nknockout:\n\u00a0 - common\n\u00a0 - roles\n\u00a0 - kernel\n\u00a0 - operatingsystem-virtual\n\u00a0 - operatingsystem-operatingsystemrelease\n\u00a0 - node\n\nroles.yaml:\n\n\u2014\nknockout:\n\u00a0 - --roles\n\n\u00a0\n\nkernel.yaml:\n\n\u2014\nknockout:\n\u00a0 - --kernel\n\n\u00a0\n\noperatingsystem-virtual.yaml:\n\n\u2014\nknockout:\n\u00a0 - --operatingsystem-virtual\n\n\u00a0\n\nResult (\"roles\" got knocked out):\n\n[helmut@BSDHelmut ~]$ sudo puppet agent -t -v\nInfo: Using environment 'production'\nInfo: Retrieving pluginfacts\nInfo: Retrieving plugin\nInfo: Loading facts\nInfo: Caching catalog for bsdhelmut.charlieroot.de\nInfo: Applying configuration version '1648205634'\nNotice: [common, kernel, operatingsystem-virtual, operatingsystem-operatingsystemrelease, node]\nNotice: /Stage[main]/Config/Notify[Knockout:]/message: defined 'message' as '[common, kernel, operatingsystem-virtual, operatingsystem-operatingsystemrelease, node]'\nNotice: Applied catalog in 19.34 seconds\n[helmut@BSDHelmut ~]$\n\n\u00a0\n\nNow change order in hiera.yaml and put \"kernel.yaml\" somewhere lower:\n\n\u2014\nversion: 5\n\ndefaults:\n\u00a0 datadir: \u00a0 /etc/puppetlabs/code/environments/%\\{::environment}/hieradata\n\u00a0 data_hash: yaml_data\n\nhierarchy:\n\u00a0 - name: \u00a0\"Nodes\"\n\u00a0 \u00a0 path: \u00a0\"nodes/%\\{::fqdn}.yaml\"\n\u00a0 - name: \u00a0\"Domains\"\n\u00a0 \u00a0 globs:\n\u00a0 \u00a0 \u00a0 - \"domains/%\\{::domain}/*.yaml\"\n\u00a0 - name: \u00a0\"Operating System Release\"\n\u00a0 \u00a0 path: \u00a0\"%\\{::operatingsystem}-%\\{::operatingsystemrelease}.yaml\"\n\u00a0 - name: \u00a0\"Operating System\"\n\u00a0 \u00a0 path: \u00a0\"%\\{::operatingsystem}.yaml\"\n\u00a0 - name: \u00a0\"Operating System Platform\"\n\u00a0 \u00a0 path: \u00a0\"%\\{::operatingsystem}-%\\{::virtual}.yaml\"\n\u00a0 - name: \u00a0\"Roles\"\n\u00a0 \u00a0 path: \u00a0\"roles.yaml\"\n\u00a0 - name: \u00a0\"Kernel\"\n\u00a0 \u00a0 path: \u00a0\"%\\{::kernel}.yaml\"\n\u00a0 - name: \u00a0\"Applications\"\n\u00a0 \u00a0 globs:\n\u00a0 \u00a0 \u00a0 - \"apps/*.yaml\"\n\u00a0 - name: \u00a0\"Common settings\"\n\u00a0 \u00a0 path: \u00a0\"common.yaml\"\n\n\u00a0\n\nResult (\"kernel\" got knocked out but \"roles\" didn't):\n\nNotice: [common, roles, operatingsystem-virtual, operatingsystem-operatingsystemrelease, node]\nNotice: /Stage[main]/Config/Notify[Knockout:]/message: defined 'message' as '[common, roles, operatingsystem-virtual, operatingsystem-operatingsystemrelease, node]'", "created": "2022-03-25T05:02:00.000000"}], "components": [], "created": "2022-03-25T04:07:00.000000", "creator": "62438586fd5e4500704327b2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6c5e26df"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0fe46:"}], "description": "Given the following hera.yaml:\n\n\u00a0\n\n---\nversion: 5\n\ndefaults:\n\u00a0 datadir: \u00a0 /etc/puppetlabs/code/environments/%\\{::environment}/hieradata\n\u00a0 data_hash: yaml_data\n\nhierarchy:\n\u00a0 - name: \u00a0\"Nodes\"\n\u00a0 \u00a0 path: \u00a0\"nodes/%\\{::fqdn}.yaml\"\n\u00a0 - name: \u00a0\"Domains\"\n\u00a0 \u00a0 globs:\n\u00a0 \u00a0 \u00a0 - \"domains/%\\{::domain}/*.yaml\"\n\u00a0 - name: \u00a0\"Operating Systems\"\n\u00a0 \u00a0 paths:\n\u00a0 \u00a0 \u00a0 - \"%\\{::operatingsystem}-%\\{::virtual}.yaml\"\n\u00a0 \u00a0 \u00a0 - \"%\\{::operatingsystem}-%\\{::operatingsystemrelease}.yaml\"\n\u00a0 \u00a0 \u00a0 - \"%\\{::operatingsystem}.yaml\"\n\u00a0 \u00a0 \u00a0 - \"%\\{::kernel}.yaml\"\n\u00a0 - name: \u00a0\"Roles\"\n\u00a0 \u00a0 path: \u00a0\"roles.yaml\"\n\u00a0 - name: \u00a0\"Profiles\"\n\u00a0 \u00a0 path: \u00a0\"profiles.yaml\"\n\u00a0 - name: \u00a0\"Applications\"\n\u00a0 \u00a0 globs:\n\u00a0 \u00a0 \u00a0 - \"apps/*.yaml\"\n\u00a0 - name: \u00a0\"Common settings\"\n\u00a0 \u00a0 path: \u00a0\"common.yaml\"\n\n\u00a0\n\ncommon.yaml:\n\nlookup_options:\n\u00a0 classes:\n\u00a0 \u00a0 merge:\n\u00a0 \u00a0 \u00a0 strategy: \u00a0 \u00a0 \u00a0 \u00a0 \u00a0'deep'\n\u00a0 \u00a0 \u00a0 knockout_prefix: \u00a0 '\u2013'\n[...]\nclasses:\n[...]\n\u00a0- openntpd\n\n\u00a0\n\nThe value \"openntpd\" can be knocked out via \"- --openntpd\" both from \"%\\{::kernel}.yaml\" and \"%\\{::operatingsystem}.yaml\" but not from \"%\\{::operatingsystem}-%\\{::operatingsystemrelease}.yaml\" or later anymore. If I change order in hiera.yaml to:\n\n\u00a0\n\n\u00a0 - name: \u00a0\"Operating Systems\"\n\u00a0 \u00a0 paths:\n\u00a0 \u00a0 \u00a0 - \"%\\{::operatingsystem}-%\\{::virtual}.yaml\"\n\u00a0 \u00a0 \u00a0 - \"%\\{::operatingsystem}.yaml\"\n\u00a0 \u00a0 \u00a0 - \"%\\{::kernel}.yaml\"\n\u00a0 \u00a0 \u00a0 - \"%\\{::operatingsystem}-%\\{::operatingsystemrelease}.yaml\"\n\n\u00a0\n\n\"openntpd\" get's knocked out from \"%\\{::operatingsystem}-%\\{::operatingsystemrelease}.yaml\" and \"%\\{::kernel}.yaml\" but not from \"%\\{::operatingsystem}.yaml\" and later.", "environment": "helmut@puppet:~$ lsb_release -d\nDescription: \u00a0 \u00a0Ubuntu 20.04.4 LTS\nhelmut@puppet:~$ puppet -V\n7.14.0\nhelmut@puppet:~$ hiera -V\n3.8.0\nhelmut@puppet:~$", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53596", "fixedVersions": [], "id": "53596", "issueType": "Bug", "key": "HI-630", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "62438586fd5e4500704327b2", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Issues knocking out hiera values", "timeSpent": "PT0S", "updated": "2022-03-25T05:43:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c16c7a9575800695acff5", "body": "Can someone please look at this Improvement, which I rather consider as a Bug?", "created": "2022-07-29T10:06:00.000000"}, {"author": "70121:81a73de1-7f52-49cd-b0b0-46c1b147202a", "body": "Kind of difficult to quick fix since a {{Sensitive.new}} should always return a Sensitive instance (or error). Also, it makes sense that an undef value could be sensitive (i.e you don't want to leak the information that a value is explicitly undef).\n\nIt would be more coherent if it was possible to specify {{convert_to: Optional[Sensitive]}} (which IIRC isn't supported). It could be implemented such that Optional's new function checks if the value it is converting is undef, and then returning undef, otherwise delegating the call to new for the type it decorates. Then, no internal protocols would be broken and it is totally clear what is wanted.", "created": "2022-07-29T14:49:00.000000"}, {"author": "70121:81a73de1-7f52-49cd-b0b0-46c1b147202a", "body": "Another implementation option is to add an {{optionally_convert_to}} feature that does what is requested.", "created": "2022-07-29T14:52:00.000000"}], "components": [], "created": "2022-02-09T05:10:00.000000", "creator": "623c16c7a9575800695acff5", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "The Convert-Function leaves {{undef}} unconverted, and just returns {{undef}} instead of {{{}Sensitive[undef]{}}}."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4fb4a2fd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0eata:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Jul/22"}], "description": "h2. Context:\n\nHiera provides the Convert-Function\n{noformat}lookup_options:\n  blubb::my_variable1:\n    convert_to: Sensitive\n  blubb::my_variable2:\n    convert_to: Sensitive\n\nblubb::my_variable1: MY_PASSWORD\n\n# Variable intentionally left empty\nblubb::my_variable2:\n{noformat}\n\u00a0\n\nWith {{blubb::my_variable2}} this leads to {{{}Sensitive[undef]{}}}, and this makes...\n{noformat}class blubb(\n  Optional[Variant[String, Sensitive[String]]] $my_variable2,\n) {}\n{noformat}\n... not accepting the Variable:\n{noformat}Class[Blubb]: parameter 'my_variable2' expects a value of type Undef, String or Sensitive[String], got Sensitive[Undef]\n{noformat}\n\u00a0\nh2. Improvement:\n\nThe Convert-Function should leave {{undef}} unconverted, and return just {{undef}} instead of {{{}Sensitive[undef]{}}}.\n\n\u00a0\nh2. References:\n\n[https://github.com/theforeman/puppet-katello/pull/436]\u00a0 \n[https://github.com/theforeman/puppet-foreman/pull/1018]\u00a0 \n.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53958", "fixedVersions": [], "id": "53958", "issueType": "Improvement", "key": "HI-628", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c16c7a9575800695acff5", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "convert_to: Sensitive only unless undef", "timeSpent": "PT0S", "updated": "2022-07-29T14:52:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:9a0622ba-116b-4661-81b3-6a2a72bf7d68", "body": "Now that Ruby 3.1 is out, it would be quite helpful to have that as well.", "created": "2022-02-11T02:08:00.000000"}], "components": [], "created": "2021-08-05T13:45:00.000000", "creator": "557058:9a0622ba-116b-4661-81b3-6a2a72bf7d68", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@14567e7c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0a9az:"}], "description": "Hi!\nI'm maintaining the Arch Linux packages for all the puppet tooling. This also includes hiera, because that's listed as a dependency for puppet. It looks like the Travis/Appveyor configuration is broken since some time and I don't reall know on which ruby versions hiera works, I guess 2.7 since that's vendored in Puppet 7 AIO. Can you please take a look at https://github.com/puppetlabs/hiera/pull/430 / let me know the supported Ruby versions?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53956", "fixedVersions": [], "id": "53956", "issueType": "Task", "key": "HI-627", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:9a0622ba-116b-4661-81b3-6a2a72bf7d68", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update CI matrix to verify it works on ruby 2.7/3", "timeSpent": "PT0S", "updated": "2022-02-11T02:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2021-06-15T02:58:00.000000", "creator": "557058:9a0622ba-116b-4661-81b3-6a2a72bf7d68", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@40ade725"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o095vf:"}], "description": "Hi,\nthe latest hiera gem has no gemspec/license speficied: https://rubygems.org/gems/hiera/versions/3.7.0\n\n{code}\n~ $ bundle info hiera\n  * hiera (3.7.0)\n\tSummary: Light weight hierarchical data store\n\tHomepage: https://github.com/puppetlabs/hiera\n\tPath: /home/bastelfreak/modulesync_config/modules/voxpupuli/puppet-corosync/.vendor/ruby/3.0.0/gems/hiera-3.7.0\n~ $ bundle licenses 2>&1 | awk '/^hiera:/ {print $0}'\nhiera: Unknown\n{code}\n\ncan you please add a proper gemspec? the puppet gem has the same issue: https://puppet.atlassian.net/browse/PUP-11118", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53565", "fixedVersions": [], "id": "53565", "issueType": "Task", "key": "HI-626", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:9a0622ba-116b-4661-81b3-6a2a72bf7d68", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera gem is missing a gemspec/license", "timeSpent": "PT0S", "updated": "2021-06-15T02:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:81a73de1-7f52-49cd-b0b0-46c1b147202a", "body": "This sounds like something for puppet lint rather than puppet core. If added to puppet it could spit out the warning if the lookup of the key resulted in a \"not found\" and explain is on.", "created": "2021-03-15T12:19:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Please verify the behavior using a recent version of puppet lookup \u2014explain and file a PUP ticket if there are issues.", "created": "2022-02-17T00:21:00.000000"}], "components": ["CLI", "UX"], "created": "2021-03-10T13:45:00.000000", "creator": "557058:8b6a5143-cd16-434d-9c56-e1f3b642a830", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67b17f62"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0735c:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Mar/21"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29673403483_*|*_6_*:*_1_*:*_0"}], "description": "A common (but hard-for-humans-to-spot) typo\u00a0in Hiera data is namespacing parameters with a single colon instead of a two, like:\n\n\u00a0\n{noformat}\nmod_name::ns1::ns2:parameter: value{noformat}\n\u00a0\n\ninstead of:\n{noformat}\nmod_name::ns1::ns2::parameter: value{noformat}\n\nIt could save the industry a lot of collective time and head-scratching if Hiera or\u00a0`{{puppet module lookup --explain}}` could emit a\u00a0warning when encountering any key name that contains a single colon ({{:}})\u00a0instead of a double colon\u00a0({{::}}).", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53739", "fixedVersions": [], "id": "53739", "issueType": "New Feature", "key": "HI-622", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:8b6a5143-cd16-434d-9c56-e1f3b642a830", "resolution": "Incomplete", "resolutionDate": "2022-02-17T00:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera/Lookup should emit warning about keys with malformed namespaces", "timeSpent": "PT0S", "updated": "2022-02-17T00:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:81a73de1-7f52-49cd-b0b0-46c1b147202a", "body": "You opened a ticket against the now deprecated Hiera version 3. It is also more of a usage question that an issue. You will get much better (and quicker) help from the community if you hop on to puppet's slack and ask for help there.", "created": "2021-03-04T11:17:00.000000"}, {"author": "557058:e5a65158-2b58-4104-89e2-9c4dd9a62df2", "body": "Can you please provide me the instruction on how to get into the puppet's slack channel?", "created": "2021-03-05T01:47:00.000000"}, {"author": "70121:81a73de1-7f52-49cd-b0b0-46c1b147202a", "body": "Have you tried using Google? (Search for {{puppet community slack}} for example)", "created": "2021-03-08T02:16:00.000000"}], "components": [], "created": "2021-03-04T09:50:00.000000", "creator": "557058:e5a65158-2b58-4104-89e2-9c4dd9a62df2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@578f3c54"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o06zpk:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Mar/21"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_30205746310_*|*_6_*:*_1_*:*_0"}], "description": "I've a hiera variables called profiles::apache::ssl_karthik in many files but different contents like\n\nprofiles::apache::ssl_karthik present in context/m1.eyaml, context/m2.eyaml, context/m3.eyaml file with different contents\n\n\u00a0\n\nI want to take the all those hiera's values (but same hiera lookup variable name) from different eyaml file and keep it in single file using file_resource.\n\n\u00a0\n\nis it possible?\n\n\u00a0\n\nBasically combine the different certs present in multiple yaml files (but it is having\u00a0 same hiera variable name with different contents) to a pem file.\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54057", "fixedVersions": [], "id": "54057", "issueType": "Task", "key": "HI-621", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Low (migrated)", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e5a65158-2b58-4104-89e2-9c4dd9a62df2", "resolution": "Incomplete", "resolutionDate": "2022-02-17T00:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Need some help of call same hiera variable from multiple hiera files", "timeSpent": "PT0S", "updated": "2022-02-17T00:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:81a73de1-7f52-49cd-b0b0-46c1b147202a", "body": "Hiera is not designed to be able to enumerate all the keys. It can only answer with the value bound to a key (which it arrives at via a large set of rules).\nYou cannot do this by just looking at simple yaml/json files since it is a particular backend that reads those and provides the answer. You can also have backends that are backed by a database, or say LDAP. If you asked for \"all keys\" you would get a return that potentially consists of very large amounts of data.\n\nFurther, since lookups are done in a particular context (set of variable values) the result and indeed the set of available keys changes. Thus the answer to the question \"give me all keys\" is multidimensional - or would need to be constrained with the set of variables that the hiera key resolution depends on - something that is possible for some known variables like facts - but the full set of variables isn't declared anywhere - the backends can do pretty much what they want. In addition to that, the paths can change dynamically since interpolation of changing variables will result in different paths being read.\n\nIt is difficult, but not impossible to add \"enumeration of keys\" to the hiera API, but it would need to have a mechanism for backends to opt in to support it, and also some mechanism for backends to respond with a signal that it would result in too much data. The implementation would be difficult since a backend in hiera 5 is just a simple function with a very clear purpose", "created": "2020-09-11T16:40:00.000000"}], "components": ["CLI"], "created": "2020-09-11T13:33:00.000000", "creator": "70121:13e9ba64-d0e3-4303-948b-08ee1e68f2de", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@54a92639"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0400w:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Sep/20"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_45229503039_*|*_6_*:*_1_*:*_0"}], "description": "I'd like to have an option for hiera lookups to fetch all keys (or keys matching a pattern).\n\n\u00a0\n\nExample use case:\n * I'm looking to change my existing hierarchy by adding/removing a new element.\u00a0 I'd like to validate that some nodes change and that others did not.\u00a0 Dumping the return result and doing diffs from old/new would give me clear insight into the consequences of the change before going live.\n * I'm coming from an ENC (such as foreman) where I'm used to looking at the entire ENC config.\u00a0 As I develop my hiera setup, I'd like to fetch the output for a node in a manner I'm familiar with.\n * A set of nodes is moving from my group to another group.\u00a0 I've given them a list of puppet modules I'm using for these nodes, but I'd also like to provide the values each node is using so they can develop their configuration management.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53784", "fixedVersions": [], "id": "53784", "issueType": "New Feature", "key": "HI-619", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:13e9ba64-d0e3-4303-948b-08ee1e68f2de", "resolution": "Won't Do", "resolutionDate": "2022-02-17T00:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera return all keys (or keys matching pattern)", "timeSpent": "PT0S", "updated": "2022-02-17T00:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "623cfe6850bb2b0070b73d1f", "created": "2020-05-29T08:17:00.000000", "name": "hiera_ticket.txt", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14173"}], "comments": [{"author": "557058:ab1874a9-45ab-4efc-91aa-5200c165b2c4", "body": "[~accountid:623cfe6850bb2b0070b73d1f] Do you have more detail about what you're trying to do, and what the expected vs current behavior is?", "created": "2020-06-01T11:46:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:623cfe6850bb2b0070b73d1f] there's not enough information in this ticket to proceed. I'm going to close this, but feel free to reach out in https://slack.puppet.com/ if you run into trouble.", "created": "2020-06-03T10:06:00.000000"}], "components": [], "created": "2020-05-29T08:15:00.000000", "creator": "623cfe6850bb2b0070b73d1f", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7ee45d2f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|o0261k:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "01/Jun/20"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_438669435_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53782", "fixedVersions": [], "id": "53782", "issueType": "Bug", "key": "HI-617", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623cfe6850bb2b0070b73d1f", "resolution": "Incomplete", "resolutionDate": "2020-06-03T10:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Puppet completely ignores HIERA !!!!!", "timeSpent": "PT0S", "updated": "2020-06-03T10:06:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623e755e761efb0069cf467c", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "What do you mean by\n{quote}\nBut the hiera lookup values are not being taken properly\n{quote}\nHow did you determine that?\n\nAlso, try the `puppet lookup` command line tool to debug what hiera is doing.", "created": "2019-10-30T04:41:00.000000"}, {"author": "623e755e761efb0069cf467c", "body": "Hi\n\n\u00a0\n\nWhen I do puppet lookup I get the following message\n\n\nWarning: Undefined variable '::hostname'", "created": "2019-10-30T05:26:00.000000"}, {"author": "623e755e761efb0069cf467c", "body": "network configuration file, ntp file and sudoers file are the ones that we are managing via hiera\n\nand only these files are not getting pulled correct.", "created": "2019-10-30T05:27:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "You need to supply the facts that your hiera.yaml requires, or give it the name of the node you want facts from (that node must have called into the master with its facts for that to work).\n\nSince I believe that hiera 5 works in general I think the issues you are seeing are caused by errors in your configuration. You will probably get help much quicker if you hop onto slack.\n\nWith `puppet lookup` you want to use the `--explain` flag to get detailed information how your paths gets expanded, if it finds the file, what it manages to look up, how it merges data (if merge is asked for) etc. etc.\n\nI am going to close this ticket as there is no reproducible case showing that hiera does not work. Feel free to come back with questions here, but think you will get better help faster in the #puppet slack channel.", "created": "2019-10-30T06:59:00.000000"}], "components": ["Community", "DOCS"], "created": "2019-10-30T02:57:00.000000", "creator": "623e755e761efb0069cf467c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a421b10"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzy35j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Oct/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6221186_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_8302615"}], "description": "I have upgraded puppet master from 3 to 5. All the modules are working fine when run puppet agent -tv from the client (puppet agent 3 . But the hiera lookup values are not being taken properly\n\nI have updated the hiera version from 3 to version 5 even that doesn't help, I am enclosing my hiera 3 file and hiera 5 file.\n\n\u00a0\n\nhiera 3 was working fine with puppet master 5\n\n###hiera version 3 file #######\n\n---\n:backends:\n\u00a0 - yaml\n\u00a0 - json\n\n:yaml:\n\u00a0 :datadir: /etc/puppet/hieradata\n\n:json:\n\u00a0 :datadir: /etc/puppet/hieradata\n\n:hierarchy:\n\u00a0 - \"node/%\\{::hostname}\"\n\u00a0 - \"tspnode/%\\{::hostname}\"\n\u00a0 - \"tmpnode/%\\{::hostname}\"\n\u00a0 - \"%\\{::clientcert}\"\n\u00a0 - \"%\\{::custom_location}\"\n\u00a0 - limits_rules\n\u00a0 - sudo_rules\n\u00a0 - virt_who\n\u00a0 - common\n\n\u00a0\n\n#############################################\n\n#######hiera version 5 ##################\n\n\u00a0\n\n---\nversion: 5\ndefaults:\n\u00a0 datadir: /etc/puppet/hieradata\n\u00a0 data_hash: yaml_data\nhierarchy:\n\u00a0 - name: \"Per-node data\"\n\u00a0\u00a0\u00a0 paths:\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"node/%\\{facts.hostname}.yaml\"\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"tspnode/%\\{facts.hostname}.yaml\"\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"tmpnode/%\\{::hostname}.yaml\"\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"%\\{::clientcert}.yaml\"\n\n\u00a0 - name: \"Other YAML hierarchy levels\"\n\u00a0\u00a0\u00a0 paths:\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"%\\{::custom_location}.yaml\"\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"limits_rules.yaml\"\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"sudo_rules.yaml\"\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"virt_who.yaml\"\n\u00a0\u00a0\u00a0\u00a0\u00a0 - \"common.yaml\"\n\n\u00a0\n\n##################\n\n\u00a0\n\nhiera -V\n3.4.2\n\n\u00a0\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53998", "fixedVersions": ["HI 3.4.2"], "id": "53998", "issueType": "New Feature", "key": "HI-615", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623e755e761efb0069cf467c", "resolution": "Cannot Reproduce", "resolutionDate": "2019-10-30T06:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "node specific variables not getting picked up from hiera", "timeSpent": "PT0S", "updated": "2019-10-30T06:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:7856b12c-3f89-4dbb-9e16-8185eb0cf961", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This has nothing whatsoever to do with hiera, just because data comes from there. Suggest hopping on to Slack and discuss with community what could be wrong and then, if there is a reproducible problem that it gets logged where the problem is most likely to be.\n\nIf I misunderstood something please reopen.", "created": "2019-06-06T11:21:00.000000"}], "components": [], "created": "2019-06-05T09:26:00.000000", "creator": "5e1d57fc2f2d9a0ca50bccea", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b01eaac"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzuz33:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jun/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_93328484_*|*_6_*:*_1_*:*_0"}], "description": "**********Hiera Data definition for package*********\n\nprofile::devops::kibana::install::package:\n\u00a0 'kibana':\n\u00a0 \u00a0 ensure: latest\n\u00a0 \u00a0 require: Yumrepo['MISCELLANEOUS']\n\n--------------------------------------------------------------------------------------------------\n\n**************Class definition for Package installation*********************\n\nclass profile::devops::kibana::install (\n $config = undef,\n) {\n\n# Set the global execution path.\n Exec \\{ path => ['/sbin', '/bin', '/usr/sbin', '/usr/bin'] }\n # Install specified packages.\n $defaults = {\n ensure => 'installed',\n }\n if $config {\n #notify \\{ \"@1: >>>> $config <<<\": }\n create_resources(package, $config, $defaults)\n }\n else {\n $hiera_config = hiera_hash('profile::devops::kibana::install::package', undef)\n #notify \\{ \"@2: >>>> $hiera_config <<<\": }\n if $hiera_config {\n create_resources(package, $hiera_config, $defaults)\n }\n }\n}\n\n----------------------------------------------------------------------------------------------------------------\n\nif i am using ensure: latest it is installing default package from yum , if i am mentioning required repo\u00a0 for package to install package it is throwing the error mentioned in summary.\n\n\u00a0\n\nPlease suggest some workaround.\n\n\u00a0\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53903", "fixedVersions": [], "id": "53903", "issueType": "Bug", "key": "HI-613", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "5e1d57fc2f2d9a0ca50bccea", "resolution": "Incomplete", "resolutionDate": "2019-06-06T11:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Invalid relationship: Package[kibana] { require => Yumrepo['MISCELLANEOUS'] }, because Yumrepo['MISCELLANEOUS'] doesn't seem to be in the catalog", "timeSpent": "PT0S", "updated": "2019-06-06T11:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "ping [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]", "created": "2018-09-21T11:31:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Yes, there is lots of bad stuff in hiera 3 - we want to delete it. I especially wanted to delete the {{hiera}} CLI for Puppet 6.0.0 since is just  awful - we decided to keep it - it is broken in many ways, and I think we should not touch it at all.  Suggest closing with \"Won't fix\".", "created": "2018-09-21T13:00:00.000000"}, {"author": "70121:b72c16a2-594d-45f8-90bc-c6bc6c9510a8", "body": "I'm also inclined to close this as \"wontfix\" - the old hiera CLI is just being kept around for compatibility reasons, and we have no plans to work on it.", "created": "2018-09-24T13:05:00.000000"}], "components": [], "created": "2018-09-21T11:26:00.000000", "creator": "557058:79f2fdd6-baee-43c4-91af-c7e647173c95", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2d26bb52"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzq0u7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Sep/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_265505573_*|*_6_*:*_1_*:*_0"}], "description": "Puppet 6 has Hiera 3.4.5, and there are still a few references to mcollective in that.\nFirst is in the help section which has this line:\n{code}\n    -m, --mcollective IDENTITY       Use facts from a node (via mcollective) as scope\n{code}\n\nThen if I attempt to use the -m flag, I'd expect an invalid option to be returned. This is the output:\n{code}\n[root@p8873t8bdvs7mhz ~]# hiera -m something\nMCollective lookup failed: LoadError: cannot load such file -- mcollective\nCould not load Mcollective scope: SystemExit: exit\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53588", "fixedVersions": [], "id": "53588", "issueType": "Bug", "key": "HI-611", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:79f2fdd6-baee-43c4-91af-c7e647173c95", "resolution": "Won't Fix", "resolutionDate": "2018-09-24T13:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Puppet 6's Hiera still has mcollective references", "timeSpent": "PT0S", "updated": "2018-09-24T13:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "6243b7b74fe01d006ba5c73e", "body": "THis was for the wrong project, sorry.", "created": "2018-09-13T17:42:00.000000"}], "components": [], "created": "2018-09-13T17:41:00.000000", "creator": "6243b7b74fe01d006ba5c73e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1a29a2f0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzpv4n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_96769_*|*_6_*:*_1_*:*_0"}], "description": "Bolt's documentation for hiera in apply blocks details a config setting 'hiera-config': [https://puppet.com/docs/bolt/0.x/manifest_blocks_hiera.html]\n\n\u00a0\n\nThis setting is not present in the main configuration documentation here: [https://puppet.com/docs/bolt/0.x/bolt_configuration_options.html]\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53587", "fixedVersions": [], "id": "53587", "issueType": "Bug", "key": "HI-610", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "6243b7b74fe01d006ba5c73e", "resolution": "Cannot Reproduce", "resolutionDate": "2018-09-13T17:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera-config option is missing in Configuration documentation", "timeSpent": "PT0S", "updated": "2018-09-13T17:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This has something to do with your configuration - there is not much we can do with this issue report. Best is probably to hop on to Slack and get interactive help, or if you are a PE customer contact Puppet's support.\n\nI am closing this issue as \"incomplete\". Also note, that this ticket was logged against Hiera and not Puppet, and it would have been helpful to have given it another title than \"{brief description of problem}\".", "created": "2018-08-24T14:37:00.000000"}, {"author": "70121:e8883706-cd0a-476e-98bc-2bedcccc7758", "body": "Thank you for your respond, would you please get me in touch with your sales team as I attempt to contact them several times and I haven't gotten any respond back?\n\n\u00a0\n\nAsh Abdullah", "created": "2018-08-28T06:43:00.000000"}, {"author": "70121:e8883706-cd0a-476e-98bc-2bedcccc7758", "body": "Also what's your slack channel url?", "created": "2018-08-28T06:45:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Contact puppet: [Puppet Official website|https://puppet.com/company/contact]\n[Puppet Website Community Page (includes Slack info)|https://puppet.com/community]", "created": "2018-08-28T09:35:00.000000"}], "components": [], "created": "2018-08-24T07:15:00.000000", "creator": "70121:e8883706-cd0a-476e-98bc-2bedcccc7758", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b95944e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzpetr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Aug/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_36729142_*|*_6_*:*_2_*:*_317260704"}], "description": "Puppet Version: puppet --version\n4.10.2\nPuppet Server Version:\npuppetserver --version\npuppetserver version: 2.7.2\nOS Name/Version: Ubuntu SMP Wed Jul 13 00:07:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux\nDescribe your issue in as much detail as possible\u2026\nDescribe steps to reproduce\u2026\nDesired Behavior:\nActual Behavior:\nsudo /opt/puppetlabs/bin/puppet agent -vt\nInfo: Using configured environment 'production'\nInfo: Retrieving pluginfacts\nInfo: Retrieving plugin\nInfo: Loading facts\nError: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, PKCS7[Method: 112, Reason: -1] at /etc/puppetlabs/code/environments/production/site.pp:1:1 on node spbns-xxx-www-01\nWarning: Not using cache on failed catalog\nError: Could not retrieve catalog; skipping run\n \nPlease take a moment and attach any relevant log output and/or manifests. This will help us immensely when troubleshooting the issue.\nExamples:\nRun puppet agent with --test --trace --debug\nDebug: Evicting cache entry for environment 'production'\nDebug: Caching environment 'production' (ttl = 0 sec)\nDebug: Evicting cache entry for environment 'production'\nDebug: Caching environment 'production' (ttl = 0 sec)\nDebug: Evicting cache entry for environment 'production'\nDebug: Caching environment 'production' (ttl = 0 sec)\nDebug: Evicting cache entry for environment 'production'\nDebug: Caching environment 'production' (ttl = 0 sec)\nDebug: Evicting cache entry for environment 'production'\nDebug: Caching environment 'production' (ttl = 0 sec)\nDebug: Evicting cache entry for environment 'production'\nDebug: Caching environment 'production' (ttl = 0 sec)\nDebug: Runtime environment: puppet_version=4.10.2, ruby_version=2.1.9, run_mode=agent, default_encoding=UTF-8\nError: Could not run: Could not create PID file: /home/aabdullah/.puppetlabs/var/run/agent.pid\naabdullah@spbns-xxx-www-01:~$ puppet agent --debug\n \n\n\n\nmy questions is why I keep getting the below error message? I have root access to my server.\n\n{color:#333333}Error: Could not run: Could not create PID file: /home/aabdullah/.puppetlabs/var/run/agent.pid{color}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53953", "fixedVersions": [], "id": "53953", "issueType": "Bug", "key": "HI-608", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:e8883706-cd0a-476e-98bc-2bedcccc7758", "resolution": "Incomplete", "resolutionDate": "2018-08-28T09:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "{brief summary of issue}", "timeSpent": "PT0S", "updated": "2018-08-28T09:35:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "557058:81aad93f-ebcc-41dc-bcb2-0fd3d2ca52e3", "created": "2018-07-30T22:26:00.000000", "name": "Screen Shot 2018-07-31 at 1.25.51 pm.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14187"}], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "I'm not able to reproduce using:\n\n{noformat}\n[root@klbsnmhvch1sbrg ~]# rpm -qa | grep  puppet\npuppet5-nightly-release-1.0.0-4.el7.noarch\npuppet-agent-5.5.4-1.el7.x86_64\npuppetserver-5.3.5-0.1SNAPSHOT.2018.07.24T2053.el7.noarch\n{noformat}\n\nModified hiera.yaml to load common.yaml backend:\n\n{noformat}\n[root@klbsnmhvch1sbrg ~]# cat /etc/puppetlabs/code/environments/production/hiera.yaml\n---\nversion: 5\ndefaults:\n  # The default value for \"datadir\" is \"data\" under the same directory as the hiera.yaml\n  # file (this file)\n  # When specifying a datadir, make sure the directory exists.\n  # See https://puppet.com/docs/puppet/latest/environments_about.html for further details on environments.\n  datadir: data\n  data_hash: yaml_data\nhierarchy:\n  - name: \"Per-node data (yaml version)\"\n    path: \"nodes/%{::trusted.certname}.yaml\"\n  - name: \"Other YAML hierarchy levels\"\n    paths:\n      - \"common.yaml\"\n{noformat}\n\nWhere common.yaml contains:\n\n{noformat}\n[root@klbsnmhvch1sbrg ~]# cat /etc/puppetlabs/code/environments/production/data/common.yaml\n---\nmessage: \"\u3053\u3093\u306b\u3061\u306f\"\n{noformat}\n\nAnd site manifest:\n\n{noformat}\n[root@klbsnmhvch1sbrg ~]# cat /etc/puppetlabs/code/environments/production/manifests/site.pp\nnode default {\n  notify { lookup('message'): }\n}\n{noformat}\n\nAgent run succeeds:\n\n{noformat}\n[root@klbsnmhvch1sbrg ~]# puppet agent -t --server klbsnmhvch1sbrg.delivery.puppetlabs.net\nInfo: Using configured environment 'production'\nInfo: Retrieving pluginfacts\nInfo: Retrieving plugin\nInfo: Retrieving locales\nInfo: Caching catalog for klbsnmhvch1sbrg.delivery.puppetlabs.net\nInfo: Applying configuration version '1533060878'\nNotice: \u3053\u3093\u306b\u3061\u306f\nNotice: /Stage[main]/Main/Node[default]/Notify[\u3053\u3093\u306b\u3061\u306f]/message: defined 'message' as '\u3053\u3093\u306b\u3061\u306f'\nNotice: Applied catalog in 0.06 seconds\n{noformat}\n\nThere were a number of unicode bug fixes in the 4.10-5.5 series. I'm assuming you're running on an older version?", "created": "2018-07-31T12:28:00.000000"}], "components": [], "created": "2018-07-30T21:39:00.000000", "creator": "557058:81aad93f-ebcc-41dc-bcb2-0fd3d2ca52e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2de6dc77"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzokzr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/Jul/18"}], "description": "Catalog compilation fails when the beginning of a hiera lookup is a double-byte character.\n\ni.e.\u00a0 lookup('message')\n\n\u00a0\n\ncommmon.yaml:\n\n{code:yaml}\n---\nmessage: \"\u3053\u3093\u306b\u3061\u306f\"\n{code}\n\u00a0\n\nWill fail during catalog compilation.\n\n\u00a0\n\nHowever, if you do:\n\n{code:yaml}\n---\nmessage \"Hello \u3053\u3093\u306b\u3061\u306f\"\n{code}\n\u00a0\n\nThe catalogue will compile. I'm assuming it's using the first character as a way to determine the type of value is coming in, is that correct ?\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53898", "fixedVersions": [], "id": "53898", "issueType": "Bug", "key": "HI-607", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:81aad93f-ebcc-41dc-bcb2-0fd3d2ca52e3", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera lookups not working for Japanese values", "timeSpent": "PT0S", "updated": "2018-07-31T12:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c12029b54ec0068b1437d", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The posted sample looks odd - there should be no numbers or bullets in a hiera.yaml file version 5. Looks like the description from the documentation has been copied into hiera.yaml?\n\nIt looks like you are a PE user and you can contact puppet support to get help.\n\n", "created": "2018-05-31T14:49:00.000000"}], "components": [], "created": "2018-05-31T06:36:00.000000", "creator": "623c12029b54ec0068b1437d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@72e01dac"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzmo7r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/May/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29616563_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_400297511"}], "description": "Ever since upgrading to enterprise 2018.1, our puppet lookups have been failing.\n\n\u00a0\n\nlookup:\n\nPS C:\\Users\\mmontmorencyx> puppet lookup hieratest::fakevalue --explain\nSearching for \"lookup_options\"\n Global Data Provider (hiera configuration version 5)\n No such key: \"lookup_options\"\n Module \"hieratest\" not found\nSearching for \"hieratest::fakevalue\"\n Global Data Provider (hiera configuration version 5)\n No such key: \"hieratest::fakevalue\"\n Module \"hieratest\" not found\nFunction lookup() did not find a value for the name 'hieratest::fakevalue'\n\n\u00a0\n\n\u00a0\n\nenv hiera.yaml:\n---\nversion: 5\ndefaults:\n# The default value for \"datadir\" is \"data\" under the same directory as the hiera.yaml\n# file (this file)\n# When specifying a datadir, make sure the directory exists.\n# See https://docs.puppet.com/puppet/latest/environments.html for further details on environments.\n# datadir: data\n# data_hash: yaml_data\nhierarchy:\n- name: \"Per-node data (yaml version)\"\npath:\"nodes/%\\{::trusted.certname}.yaml\"\n- name: \"Other YAML hierarchy levels\"\npaths:\n- \"serviceaccount.yaml\"\n- \"common.yaml\"\n\u00a0\nsample of common.yaml:\n---\npuppet_enterprise::master::code_manager::certname:/opt/puppetlabs/server/data/console-services/certs/public-console.cert.pem\npuppet_enterprise::master::code_manager::authenticate_webhook:false\nhieratest::fakevalue:257892\n\u00a0", "environment": "We are a windows shop, so this is happening on windows nodes.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53643", "fixedVersions": [], "id": "53643", "issueType": "Bug", "key": "HI-603", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c12029b54ec0068b1437d", "resolution": "Cannot Reproduce", "resolutionDate": "2018-06-05T06:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera v5 lookups not working as expected", "timeSpent": "PT0S", "updated": "2018-06-05T06:01:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2018-05-08T01:05:00.000000", "creator": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5e55a52f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-2058"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzo7dr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_597682_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_15074464639"}], "description": "We currently use packaging's \"package:gem\" task to build the Hiera gem which adds a lot more complexity than we need (i.e. it builds a gemspec from data in project_data.yaml and then builds the corresponding default gem from it + any platform-specific gems [that might have platform-specific dependences]).\n\nWe should have the info. in project_data.yaml in the .gemspec file so that a simple gem build should do the trick.", "epicLinkSummary": "Simplify Gem Builds", "estimate": "PT0S", "externalId": "54030", "fixedVersions": [], "id": "54030", "issueType": "Task", "key": "HI-602", "labels": ["packaging"], "originalEstimate": "PT0S", "parent": "58407", "parentSummary": "Simplify Gem Builds", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "resolution": "Won't Do", "resolutionDate": "2018-10-29T12:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Migrate gemspec info in project_data.yaml to the .gemspec file", "timeSpent": "PT0S", "updated": "2018-10-29T12:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Merged to master in https://github.com/puppetlabs/hiera/commit/e67de42f249f2881ec33c49179c943aae187efb3", "created": "2018-04-27T16:25:00.000000"}], "components": [], "created": "2018-04-27T16:13:00.000000", "creator": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7784702b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzllwf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Apr/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_358605545_*|*_1_*:*_1_*:*_751083_*|*_5_*:*_1_*:*_0"}], "description": "Specifically, this piece of code: https://github.com/puppetlabs/hiera/blob/master/bin/hiera#L44_L60.\n\nThis is part of the move to deprecate mcollective from the agent for Platform 6.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53991", "fixedVersions": [], "id": "53991", "issueType": "Task", "key": "HI-601", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "resolution": "Fixed", "resolutionDate": "2018-05-01T20:02:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Remove feature to read facts with mcollective", "timeSpent": "PT0S", "updated": "2018-05-01T20:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The hiera gem is only for hiera 3. Hiera 5 is completely in Puppet. Hiera 3 is also deprecated and support for it will at some point be dropped along with the hiera gem. \n\nThe problem is in rspec-puppet as it seems to think it can give a hiera.yaml directly to the hiera gem. That is not true as it needs puppet to deal with the hiera.yaml file, not the deprecated hiera 3 gem (which is only used by hiera 5 as a supporting library for hiera 3 backends).\n\nThe issue should be reported against rspec-puppet. Ping [~accountid:557058:9524215b-1a7d-407b-b7d2-e020f3970c4d]. I am closing this as a won't do as there is nothing we can do about the problem in the hiera 3 implementation.", "created": "2018-04-05T01:39:00.000000"}], "components": [], "created": "2018-04-04T20:29:00.000000", "creator": "70121:5c17dc32-15d9-430a-91ae-f9a292d3e562", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@219bcece"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzl3cv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Apr/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_18629894_*|*_6_*:*_1_*:*_0"}], "description": "*Puppet Version: 1.10.10*\n *Puppet Server Version: 4.10.10*\n *OS Name/Version: RHEL7*\n\nhiera ruby gem doesn't support hiera v5 yaml file being defined at a global level.\n\nas stated in documentation its supported at all levels\n\n[https://puppet.com/docs/puppet/4.10/hiera_config_yaml_5.html]\n\nTrying to perform puppet-rspec testing using hiera data\u00a0\n\n*Desired Behavior:*\n\nTo return the respective hiera data when performing rspec testing\n\n*Actual Behavior:*\n{code:java}\n/home/vagrant/.rvm/gems/ruby-2.2.6/gems/hiera-3.4.2/lib/hiera/config.rb:32:in `load': v5 hiera.yaml is only to be used inside an environment or a module and cannot be given to the global hiera (RuntimeError)/home/vagrant/.rvm/gems/ruby-2.2.6/gems/hiera-3.4.2/lib/hiera/config.rb:32:in `load': v5 hiera.yaml is only to be used inside an environment or a module and cannot be given to the global hiera (RuntimeError) from /home/vagrant/.rvm/gems/ruby-2.2.6/gems/hiera-3.4.2/lib/hiera.rb:50:in `initialize' from /home/vagrant/.rvm/gems/ruby-2.2.6/gems/hiera-3.4.2/bin/hiera:232:in `new' from /home/vagrant/.rvm/gems/ruby-2.2.6/gems/hiera-3.4.2/bin/hiera:232:in `<top (required)>' from /home/vagrant/.rvm/gems/ruby-2.2.6/bin/hiera:23:in `load' from /home/vagrant/.rvm/gems/ruby-2.2.6/bin/hiera:23:in `<main>' from /home/vagrant/.rvm/gems/ruby-2.2.6/bin/ruby_executable_hooks:15:in `eval' from /home/vagrant/.rvm/gems/ruby-2.2.6/bin/ruby_executable_hooks:15:in `<main>'\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53671", "fixedVersions": [], "id": "53671", "issueType": "Bug", "key": "HI-598", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:5c17dc32-15d9-430a-91ae-f9a292d3e562", "resolution": "Won't Do", "resolutionDate": "2018-04-05T01:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera ruby gem not supporting hiera v5 yaml file.", "timeSpent": "PT0S", "updated": "2018-04-05T01:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:91233464-4152-4228-81dd-172d43a52a03", "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Merged to 3.3.x in https://github.com/puppetlabs/hiera/commit/f5367a70f9f07ce4e3355d0d7ec3f34e85e075ab", "created": "2018-04-02T17:56:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This has passed CI in puppet-agent 1.10.10.128.gb402130 !", "created": "2018-04-04T09:10:00.000000"}], "components": [], "created": "2018-02-02T15:28:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": ["Coremunity"]}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7acca64e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-7432"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzk5p3:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Apr/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_141221381_*|*_1_*:*_1_*:*_244777160_*|*_10007_*:*_1_*:*_269513241_*|*_5_*:*_1_*:*_1203065502_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_4588623849"}], "epicLinkSummary": "Improve Beaker Workflow", "estimate": "PT0S", "externalId": "53608", "fixedVersions": ["HI 3.3.3", "HI 3.4.3"], "id": "53608", "issueType": "Task", "key": "HI-596", "labels": [], "originalEstimate": "PT0S", "parent": "21910", "parentSummary": "Improve Beaker Workflow", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2018-04-04T09:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Bump beaker-puppet and use common ci rake tasks and utilities ", "timeSpent": "PT0S", "updated": "2019-10-21T08:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is by design. We have a ticket PUP-7675 about adding the ability to typecast a result - (as a simple example this could turn a string \"true\" into a boolean true value). That is however not a full solution as it is difficult to deal with values that have structure (array's and hashes) this way.\n\nThere is also the hiera interpolation function {{alias}}, which, if used as the only thing in a string will return the aliased key verbatim (without turning it into a string). This may however not be applicable in your case since you want the value of a variable. To make this work you would make the variable that you want to reference also set from hiera, and you can then lookup that value via the alias interpolation function instead of using scope. \n\nIn hiera 5, you can easily write your own custom backend functions and you are then free to do what you want - for example", "created": "2017-10-25T06:54:00.000000"}], "components": [], "created": "2017-10-25T03:12:00.000000", "creator": "557058:2b6036e6-af7b-4096-9792-705f2877471e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@100221dd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzhq4v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Oct/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13331996_*|*_6_*:*_1_*:*_0"}], "description": "When trying to use the hiera scope interpolation function, everything automatically becomes a String data type. This is, I presume, because we have to wrap %{} in quotes. (Though I have tried without quotes, by escaping the % instead, but though seems to parse correctly, I don't think it functions.)\n\nThis means I can not currently look-up a scope defined integer to dynamically pass as a class parameter. (There's other ways to do that, I know, but to be able to use scope() in hiera would be the best way for me in this particular situation.)\n\nCan we have a way to override the datatype of a hiera value?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53821", "fixedVersions": [], "id": "53821", "issueType": "Bug", "key": "HI-589", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:2b6036e6-af7b-4096-9792-705f2877471e", "resolution": "Won't Do", "resolutionDate": "2017-10-25T06:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Using %{scope()} function converts any variable to a string with no way to override", "timeSpent": "PT0S", "updated": "2017-10-25T06:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c11568d8b9c0068b8b14e", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The functionality that {{calling_module}} provides is strange because it makes values be different depending on from where you are looking them up. This makes them difficult to deal with.\n\nThere are two primary use cases for calling_module:\n* things in modules - as mentioned in the documentation, and these can be replaced with the new \"data in module\"\n* keeping separate data files with overrides per module to enable maintenance by different users - this can be replaced with the glob pattern\n\nWhat you cannot achieve with the new version is that a key has different value depending on the context it is looked up from. Do you really need that?", "created": "2017-10-20T07:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "As pointed out, this works with v3 global hiera.yaml since the new version is backwards compatible, but not anywhere else.\nIt is important to understand that use of {{calling_module}} in practice means that the cache must be evicted per lookup that does not come from the same module as the one before it, and this has a performance impact.", "created": "2017-10-20T08:06:00.000000"}], "components": [], "created": "2017-10-19T06:19:00.000000", "creator": "623c11568d8b9c0068b8b14e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@59449aac"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzhk9j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Oct/17"}], "description": "Hi\n\nremoving the calling_module pseudo variable in favor of \"use the module layer\" is very short sighted and actively breaks perfectly nice and valid configs, please undo.\n\nFirst off - as long as the hiera thingie runs in compat v3 mode, it should work, no matter what puppet version, as its part of v3.\n\nThen, even when using v4 or later, it should work. The module layer is NOT an option to replace what calling_module gave. The module layer is for the module author, which, in many cases, is NOT the one maintaining the local puppet. Using calling_module variable in hiera enables a LOCAL module layer of config option, that is entirely independent of the things that the module author wants to do.\n\n\nMy practical example: I do have a 53layer hierarchy here, with widespread use of calling_module included. The biggest user of that are the firewalls and sudo modules, in which, as you may guess, we locally configure the firewall and sudo entities for the machine.\nWhich are highly dependent on our local environment. So nothing at all the module author ever wants (or needs to) resemble. Their hierarchy basically boils down to \"nodename, osfamily, common\" and is fine for configuring things like executable and config file path entries.\n\nOur hierarchy includes tons of layers of local definitions derived from variables (function of machine, network name machine is in, custom facts adapted to our env, etc. pp). This is NOT at all representable with the 3 shallow levels now offered. It does not belong into the module, as its not from the module author, it is not environment specific, it is global - but specific to the calling module.\n\nWith calling_module from the global hierarchy it nicely works out.\n\nWith dropping that, it means puppet wont work anymore for us, which is a shame.\n\nJoerg", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54024", "fixedVersions": [], "id": "54024", "issueType": "Bug", "key": "HI-588", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c11568d8b9c0068b8b14e", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Removing calling_module breaks perfectly valid usage", "timeSpent": "PT0S", "updated": "2017-10-20T08:06:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "How important is this given that hiera 3 (the HI project) is deprecated?", "created": "2017-10-16T06:03:00.000000"}, {"author": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "body": "Valid question but it was indicated to me that there be a clean run through all PA CI pipeline tests (that happen to also include hiera tests) with agent hosts configured in FIPS mode for whoever to be able to accept the other FIPS related changes in all other affected repos plus I guess it is good to have our CI enabled to be able to test PA for FIPS on demand. \nAll hiera changes would hopefully be confined to the acceptance test scripts - mainly the install step as against actual code. FIPS compliant PA is very desirable to some (potential) customers if it does not get mandated sometime in future, at least so am told, and it is an important deliverable on my plate.\nSo the short answer is - Am doing it since PA 5.x uses whatever version(s) of hiera and has its own set of acceptance tests that are exercised in current CI which now need to run in FIPS mode. ", "created": "2017-10-16T08:21:00.000000"}, {"author": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "body": "This is no longer needed. This was the original/experimental approach when we were not clear on having an actual FIPS mode image. Now that there is a FIPS enabled redhat7-fips which is being used for testing. ", "created": "2018-01-31T23:02:00.000000"}], "components": [], "created": "2017-10-14T15:28:00.000000", "creator": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Enable testing hiera acceptance tests on platforms running in FIPS mode."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@133a23c1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-1617"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzhh33:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Oct/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9448413932_*|*_6_*:*_1_*:*_0"}], "description": "It should be possible to run hiera acceptance tests on platforms in FIPS mode. That translates into updating the install script to enable FIPS mode on agent's target platform.", "epicLinkSummary": "Enable testing PA on FIPS enabled systems in CI and otherwise", "estimate": "PT0S", "externalId": "53665", "fixedVersions": [], "id": "53665", "issueType": "Task", "key": "HI-587", "labels": [], "originalEstimate": "PT0S", "parent": "59667", "parentSummary": "Enable testing PA on FIPS enabled systems in CI and otherwise", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "resolution": "Won't Do", "resolutionDate": "2018-01-31T23:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Enable testing hiera acceptance tests on platforms in FIPS mode", "timeSpent": "PT0S", "updated": "2018-01-31T23:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "body": "PR: https://github.com/puppetlabs/hiera/pull/408", "created": "2017-10-09T18:39:00.000000"}, {"author": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "body": "This was being done using the (interim) approach of doing the following required steps from within setup scripts to allow testing in FIPS mode:\n* Adjust system openssl library patch version on RHEL7 whose default patch revision is lower than that on Centos7 which is used to build PA\n* Enable FIPS mode\n\nPer discussion with RE, Platform OS and others it was deemed designating platforms for FIPS that actually boot in FIPS mode would be more sustainable long term approach. Separate ticket/epic have been created to add support for FIPS booting platforms in CI: IMAGES-656, PA-1642\n\nLikewise this work is not required. ", "created": "2017-11-06T22:54:00.000000"}], "components": [], "created": "2017-10-02T17:38:00.000000", "creator": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "PA built against system openssl should pass all tests in adhoc PA CI pipes"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b7756b8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-1608"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzh6db:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_318144007_*|*_3_*:*_1_*:*_290074375_*|*_10009_*:*_1_*:*_2438342743_*|*_6_*:*_1_*:*_0"}], "description": "There are some failures when testing PA, built against openssl, in CI pipe lines on RHEL targets. The issue is due to the rhel images having older patch version of openssl package. \n\nThe install scripts in various project specific acceptance setup needs to be changed to upgrade the openssl lib versions. ", "epicLinkSummary": "Allow testing PA built w/ system openssl in CI on rhel platforms", "estimate": "PT0S", "externalId": "53763", "fixedVersions": [], "id": "53763", "issueType": "Task", "key": "HI-585", "labels": [], "originalEstimate": "PT0S", "parent": "59666", "parentSummary": "Allow testing PA built w/ system openssl in CI on rhel platforms", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:71582ab7-ed41-48f8-a53e-545356d7dee4", "resolution": "Won't Do", "resolutionDate": "2017-11-06T22:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Test PA built against system openssl in CI test pipelines", "timeSpent": "PT0S", "updated": "2017-11-06T22:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:836ef76e-8051-48a3-8dc7-005f79695b0e", "attachments": [], "comments": [], "components": [], "created": "2017-09-18T14:57:00.000000", "creator": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@54afcdc8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzgsaf:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Hiera will now correctly report the hiera.yaml file version when reporting that the wrong version is used for a global hiera.yaml."}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_67603_*|*_10009_*:*_1_*:*_25813_*|*_5_*:*_1_*:*_1268333677_*|*_6_*:*_1_*:*_0"}], "description": "Post-ticket for https://github.com/puppetlabs/hiera/pull/405.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53820", "fixedVersions": ["HI 3.4.2"], "id": "53820", "issueType": "Bug", "key": "HI-584", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "resolution": "Fixed", "resolutionDate": "2017-09-18T14:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera falsely reports version 4 in hiera.yaml error on version 5 file", "timeSpent": "PT0S", "updated": "2017-10-03T07:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:75cf0874-3831-4bb6-a7ff-b655ecaa1a81", "attachments": [], "comments": [], "components": [], "created": "2017-09-18T14:12:00.000000", "creator": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4abacd7f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzgs27:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_487797849_*|*_1_*:*_1_*:*_2452_*|*_10007_*:*_1_*:*_2489119_*|*_5_*:*_1_*:*_683095203_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_97764946"}], "description": "Note that the gemspec also needs to be updated.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53980", "fixedVersions": ["HI 3.4.2"], "id": "53980", "issueType": "Task", "key": "HI-583", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "resolution": "Fixed", "resolutionDate": "2017-10-03T07:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Bump hiera version to 3.4.2", "timeSpent": "PT0S", "updated": "2017-10-03T07:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The way to implement this is to use a backend of the hiera5 {{lookup_key}} kind of backend function. It can receive the query and do whatever processing it wants. (Here is the documentation for the lookup key kind of backend: https://docs.puppet.com/puppet/5.1/hiera_custom_lookup_key.html). That however is something that is best implemented by the implementor of the backend (\"crayfishx\" - [~accountid:557058:b9701f0f-390d-40c1-9497-9ac96dbd3ab1]).\n\nI would be very hesitant to making the key being looked up available for interpolation as that completely blows up any caching (and therefore most of the performance gains in hiera 5) since the key changes with every lookup.\n\n", "created": "2017-09-14T12:36:00.000000"}, {"author": "557058:467cf264-3f63-4acc-8f20-8bde622365f4", "body": "How do I provide a query like the ones described above? \n\nI am working on a mssql lookup_key function, and find it really hard to implement without hiera.yaml aware of key. Do you have any suggestions on how to implement that? \n\nI've noticed that Craig didn't write the MySQL backend in hiera 5, and the hiera 3 one stopped working, I'm guessing it is because of this?", "created": "2017-09-14T13:04:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:467cf264-3f63-4acc-8f20-8bde622365f4] I chatted with Craig about this, he has already fixed the very same problem in his HTTP backend and he said he will do the same fix for his mysql backend. He also promised to post on this ticket with info when he has a fix for the problem. So... stay tuned.", "created": "2017-09-14T15:13:00.000000"}, {"author": "557058:467cf264-3f63-4acc-8f20-8bde622365f4", "body": "Awesome, thanks Henrik and Craig! ", "created": "2017-09-14T15:26:00.000000"}, {"author": "557058:b9701f0f-390d-40c1-9497-9ac96dbd3ab1", "body": "\n[~accountid:557058:467cf264-3f63-4acc-8f20-8bde622365f4] Thanks for bringing this up - yes the current 2.x hiera-mysql end is no longer compatible with Hiera 5, I don't think it's worth rolling a fix into the 2.x code because if people are on Hiera 5 they should be migrating to Hiera 5 configs, and since the issue doesn't affect anyone on Puppet < 4.9, I think the best way is to move forward with a Hiera 5 backend\n\nI've just released hiera-mysql 3.0.0 (https://forge.puppet.com/crayfishx/hiera_mysql/readme) - this will take a little more configuration on your side as you'll need to migrate your existing Hiera 3 config to Hiera 5 (https://docs.puppet.com/puppet/5.1/hiera_migrate.html).  Using this version you will be able to interpolate keys into your query with \"__KEY__\".  There are also some other features that weren't available before that you might find useful.  Please read the README on the module with regards to behaviour of lookups as there may be some subtle differences to take into account.  Note also that hiera-mysql 3.0.0 is shipped as a Puppet module, not a gem (although the gem dependencies are unchanged)\n\nI'm happy to help with any issues you have with this or any features you think this backend should have.  Feel free to reach out to me.\n\nRegards\nCraig", "created": "2017-09-15T06:58:00.000000"}, {"author": "557058:467cf264-3f63-4acc-8f20-8bde622365f4", "body": "Thanks Craig! I see you created a wrapper for the key, {{_KEY_}}, which was one of my options. My concern is that customers will try to use that in other backends and failed, because it is not hiera notation but a function specific one. I guess with good docs, this shouldn't be an issue.\n\nFor what it's worth, in my MsSQL backend (https://github.com/LMacchi/hiera_mssql) I hard coded the query instead of allowing customers to pass an option['query']. Since this is my first time developing something like this, I'll go through yours to see if there's anything I can do better.\n\nMuch appreciated Craig and Henrik!\n\nL.\n", "created": "2017-09-15T09:27:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Fixed by upgrade of the mysql hiera backend, no changed on the hiera/puppet side.", "created": "2017-09-15T09:33:00.000000"}], "components": [], "created": "2017-09-14T10:57:00.000000", "creator": "557058:467cf264-3f63-4acc-8f20-8bde622365f4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@675606bf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzgocn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Sep/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_81362143_*|*_6_*:*_1_*:*_0"}], "description": "In the past, hiera.yaml was aware of {{\"%\\{key\\}\"}}, which allowed to write custom backends with options like this:\n\n{{:query: SELECT val FROM configdata WHERE var='%\\{key\\}'}}\n\nWith hiera 5, hiera.yaml is not aware of key, so when that option gets to the function, it looks like:\n\n{{:query: SELECT val FROM configdata WHERE var=''}}\n\nCustomers that use the [mysql backend](https://github.com/crayfishx/hiera-mysql), for example, cannot use it in hiera 5 and writing one without key relies on a very inflexible implementation since the query needs to be hard coded inside the function code.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53530", "fixedVersions": [], "id": "53530", "issueType": "Bug", "key": "HI-582", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:467cf264-3f63-4acc-8f20-8bde622365f4", "resolution": "Won't Do", "resolutionDate": "2017-09-15T09:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Make hiera.yaml aware of key", "timeSpent": "PT0S", "updated": "2017-09-15T09:33:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:68216498-c6bf-4e8f-92c1-ac84887b7c02", "attachments": [], "comments": [{"author": "557058:97578a32-3955-4c5c-939e-58a878437b49", "body": "[~accountid:557058:263afade-3e4f-46c6-b50a-cf2982192562] per Bryan Jen's sleuthing, it seems this started happening with the [PR|https://github.com/puppetlabs/hiera/pull/393] for HI-346. Can you take a look and let me know what you think? While best-practices for writing tests should ideally avoid doing this at all, it is the case I think that we have a regression, and so old tests like the above reproduction written before HI-346 _used_ to work, and don't anymore. That seems like a regression we should fix so customers don't have to refactor their entire codebase of tests to upgrade.", "created": "2017-09-08T17:21:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Just stubbing that fact shouldn't be enough to cause a failure.\n\nThe code that's loading in Hiera is guarded by the {{File::ALT_SEPARATOR}} constant, which is a universal method of checking for Windows within Ruby. This allows us to guard code that runs only on Windows without worry that it will be loaded elsewhere.\n\nIn OSX you'll see it's expectedly not defined:\n\n{code}\nirb(main):001:0> RUBY_VERSION\n=> \"2.4.1\"\nirb(main):002:0> !!File::ALT_SEPARATOR\n=> false\nirb(main):003:0> File::ALT_SEPARATOR\n=> nil\nirb(main):004:0> !nil\n=> true\nirb(main):005:0> !!nil\n=> false\n{code}\n\nThe code in Hiera is guarded as such - https://github.com/puppetlabs/hiera/pull/393/files#diff-d039e02fd0e21a94fc3125dd21ba6b89R4\n\nIt's the same basic approach we take in Puppet - https://github.com/puppetlabs/puppet/blob/ebd96213cab43bb2a8071b7ac0206c3ed0be8e58/lib/puppet/util/platform.rb#L10\n\nI don't have the time to repro, but I have a good guess as to what's going on. I suspect this is actually an rspec-puppet bug, as rspec-puppet has been known to perform a number of dangerous monkey patches in an effort to make tests think they're running on a different platform.  I see code at https://github.com/rodjek/rspec-puppet/blob/d62260edaea8b19fd6ab282ddb2f47110b81833a/lib/rspec-puppet/consts.rb#L10 that makes me believe rspec-puppet is modifying {{File::ALT_SEPARATOR}}.  Given it shouldn't be doing this, any fixes should land in that project.", "created": "2017-09-11T00:26:00.000000"}, {"author": "557058:68216498-c6bf-4e8f-92c1-ac84887b7c02", "body": "Using the PDK template, and tooling, I can reproduce the reported error:\n\n{code}\ndavid@davids:~/tmp/test$ pdk test unit\n[\u2716] Running unit tests\n  Evaluated 1 tests in 0.106348968 seconds: 1 failures, 0 pending\nfailed: rspec: ./spec/classes/test_spec.rb:19: cannot load such file -- fiddle/import\ndavid@davids:~/tmp/test$\n{code}\n\nThe stack trace supports the analysis of the rspec-puppet monkey patching interference: \n\n{code}\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/hiera-3.4.0/lib/hiera/util/win32.rb:5:in `<module:Win32>'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/hiera-3.4.0/lib/hiera/util/win32.rb:3:in `<module:Util>'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/hiera-3.4.0/lib/hiera/util/win32.rb:2:in `<class:Hiera>'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/hiera-3.4.0/lib/hiera/util/win32.rb:1:in `<top (required)>'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/hiera-3.4.0/lib/hiera.rb:8:in `<class:Hiera>'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/hiera-3.4.0/lib/hiera.rb:3:in `<top (required)>'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/hiera_puppet.rb:1:in `<top (required)>'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/hiera/puppet_function.rb:1:in `<top (required)>'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/monkey_patches.rb:275:in `require'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/../../../puppet/functions/hiera.rb:1:in `get_binding'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/ruby_function_instantiator.rb:22:in `eval'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/ruby_function_instantiator.rb:22:in `create'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/module_loaders.rb:166:in `find'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:151:in `internal_load'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:32:in `load_typed'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:143:in `internal_load'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:32:in `load_typed'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:143:in `internal_load'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:32:in `load_typed'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:143:in `internal_load'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:32:in `load_typed'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:143:in `internal_load'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/base_loader.rb:32:in `load_typed'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/loader.rb:53:in `load'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/runtime3_support.rb:304:in `call_function'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/evaluator_impl.rb:949:in `call_function_with_block'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/evaluator_impl.rb:918:in `eval_CallNamedFunctionExpression'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:90:in `visit_this_1'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/evaluator_impl.rb:81:in `evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/parser/evaluating_parser.rb:63:in `evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/ast/pops_bridge.rb:32:in `evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/ast.rb:31:in `safeevaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:199:in `block (3 levels) in evaluate3x'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:259:in `as_read_only'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:199:in `block (2 levels) in evaluate3x'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:197:in `catch'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:197:in `block in evaluate3x'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:953:in `with_guarded_scope'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:196:in `evaluate3x'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/resource/type.rb:369:in `block (2 levels) in assign_defaults'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/errors.rb:64:in `exceptwrap'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/resource/type.rb:369:in `block in assign_defaults'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/resource/type.rb:364:in `each'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/resource/type.rb:364:in `assign_defaults'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/resource/type.rb:331:in `block in set_resource_parameters'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:941:in `block in with_parameter_scope'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:953:in `with_guarded_scope'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/scope.rb:939:in `with_parameter_scope'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/resource/type.rb:326:in `set_resource_parameters'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/resource/type.rb:123:in `evaluate_code'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/resource.rb:79:in `block in evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler/around_profiler.rb:58:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler.rb:51:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/resource.rb:71:in `evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/compiler.rb:384:in `each'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/compiler.rb:384:in `evaluate_classes'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/loader/../../../puppet/functions/include.rb:16:in `include'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/functions/dispatch.rb:60:in `invoke'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/functions/dispatcher.rb:43:in `block in dispatch'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/functions/dispatcher.rb:42:in `catch'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/functions/dispatcher.rb:42:in `dispatch'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/functions/function.rb:46:in `block in call'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/functions/function.rb:45:in `catch'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/functions/function.rb:45:in `call'\n     # :2:in `block in call_function'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/runtime3_support.rb:307:in `eval'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/runtime3_support.rb:307:in `block in call_function'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler/around_profiler.rb:58:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler.rb:51:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/runtime3_support.rb:305:in `call_function'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/evaluator_impl.rb:949:in `call_function_with_block'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/evaluator_impl.rb:918:in `eval_CallNamedFunctionExpression'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:48:in `block in visit_this'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:42:in `each'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:42:in `visit_this'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:92:in `visit_this_1'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/evaluator_impl.rb:81:in `evaluate'\n     # :in `stack'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/puppet_stack.rb:30:in `eval'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/puppet_stack.rb:30:in `stack'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/evaluator_impl.rb:723:in `eval_Program'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:48:in `block in visit_this'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:42:in `each'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:42:in `visit_this'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/visitor.rb:92:in `visit_this_1'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/evaluator/evaluator_impl.rb:81:in `evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/pops/parser/evaluating_parser.rb:63:in `evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/ast/pops_bridge.rb:132:in `evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/ast.rb:31:in `safeevaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/resource/type.rb:136:in `evaluate_code'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/resource.rb:79:in `block in evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler/around_profiler.rb:58:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler.rb:51:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/resource.rb:71:in `evaluate'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/compiler.rb:589:in `evaluate_main'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/compiler.rb:164:in `block (2 levels) in compile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler/around_profiler.rb:58:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler.rb:51:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/compiler.rb:164:in `block in compile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/context.rb:65:in `override'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet.rb:310:in `override'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/compiler.rb:153:in `compile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/parser/compiler.rb:33:in `compile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/indirector/catalog/compiler.rb:282:in `block (2 levels) in compile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler/around_profiler.rb:58:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util/profiler.rb:51:in `profile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/indirector/catalog/compiler.rb:280:in `block in compile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util.rb:224:in `block in benchmark'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/util.rb:223:in `benchmark'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/indirector/catalog/compiler.rb:278:in `compile'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/indirector/catalog/compiler.rb:52:in `find'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/puppet-5.0.1/lib/puppet/indirector/indirection.rb:195:in `find'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/adapters.rb:83:in `catalog'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/adapters.rb:161:in `catalog'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/support.rb:354:in `build_catalog_without_cache'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/support.rb:375:in `block in build_catalog'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/cache.rb:17:in `call'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/cache.rb:17:in `get'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/support.rb:374:in `build_catalog'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/support.rb:75:in `block in load_catalogue'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/support.rb:319:in `with_vardir'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/support.rb:69:in `load_catalogue'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/example/class_example_group.rb:7:in `catalogue'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/support.rb:10:in `block in subject'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/matchers/compile.rb:23:in `call'\n     # /opt/puppetlabs/pdk/share/cache/ruby/2.1.0/gems/rspec-puppet-2.6.8/lib/rspec-puppet/matchers/compile.rb:23:in `matches?'\n     # ./spec/classes/test_spec.rb:19:in `block (3 levels) in <top (required)>'\n{code}\n\nUsing the patch in https://github.com/rodjek/rspec-puppet/pull/603 allows the test to pass without error.\n", "created": "2017-09-11T05:32:00.000000"}, {"author": "557058:97578a32-3955-4c5c-939e-58a878437b49", "body": "I suspect rspec-puppet stubs {{File::ALT_SEPARATOR}} because we're trying to make sure some string outputs return correctly, not out of any intention to fool Ruby into thinking we're running on Windows.\n\nIs checking {{File::ALT_SEPARATOR}} really the best way to check that the Ruby platform is Windows?\n\nStack Overflow [seems to suggest|https://stackoverflow.com/questions/4871309/what-is-the-correct-way-to-detect-if-ruby-is-running-on-windows] a Gem built-in method, {{Gem.win_platform?}}, which in turn is based on {{RUBY_PLATFORM}} and a Gem-module enumeration of Windows value regexes.\n\nIf we used that methodology, instead of inferring platform from {{File::ALT_SEPARATOR}}, it seems like we wouldn't be quite as subject to unintentional platform redefinition.\n\nI get the instinct to shy away from enumeration or additional libraries, but at the same time I don't see an elegant way to fix this in rspec-puppet given how Hiera has chosen to determine Windows/non-windows and a legitimate need rspec-puppet has to change {{File::ALT_SEPARATOR}} to make test output as expected.", "created": "2017-09-11T15:13:00.000000"}, {"author": "557058:97578a32-3955-4c5c-939e-58a878437b49", "body": "Looks like in a private API {{RSpec::Support::OS.windows?}} does it this way:\n\n{code:ruby}\ndef windows?\n  !!(RbConfig::CONFIG['host_os'] =~ /cygwin|mswin|mingw|bccwin|wince|emx/)\nend\n{code}\n\n[Source|https://github.com/rspec/rspec-support/blob/111879e6451c623fdc5d8921b79f2a57d9db64f0/lib/rspec/support/ruby_features.rb#L12-L14]", "created": "2017-09-11T16:41:00.000000"}, {"author": "557058:68216498-c6bf-4e8f-92c1-ac84887b7c02", "body": "https://github.com/rodjek/rspec-puppet/pull/603 has been merged.", "created": "2017-09-12T03:05:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Thanks for further investigating this [~accountid:557058:68216498-c6bf-4e8f-92c1-ac84887b7c02]!\n\nMeant to quickly follow up on this with a couple of notes for [~accountid:557058:97578a32-3955-4c5c-939e-58a878437b49].\n\n* I'm not convinced that rspec-puppet needs to change {{File::ALT_SEPARATOR}} (looks like the plan is to rethink this in the future, once there isn't a time crunch).\n* The reason that {{ALT_SEPARATOR}} is generally used is because it's part of core Ruby that goes back to a number of old versions and it's set at compile time when built - https://github.com/ruby/ruby/blob/75cda5e22f6bc7ba6c91b6501d4233e782178a3a/file.c#L2921-L2934\nGood or bad, its use is a pretty well established pattern in Ruby, and therefore manipulating it is probably not the best thing to do (Puppet is not the only code to rely on this method FWIW).\n* {{RUBY_PLATFORM}} is a little trickier, as it's not a binary on/off and will vary by arch (IIRC, the value might have changed over time - it's use changed over time in Bundler for sure, but not sure about core Ruby)\n* The {{RbConfig::CONFIG}} setup is also generally established at compile time, but it's usually based on the *build platform* and isn't necessarily the same thing as the *runtime platform* - we ran into a few peculiar issues when initially producing Ruby Windows builds with Vanagon.  Builds are made under Cygwin, but typically not then run under Cygwin - this led to failure to compile native gems, because Ruby thought it had Cygwin-isms available.\n", "created": "2017-09-30T19:51:00.000000"}], "components": [], "created": "2017-09-08T16:29:00.000000", "creator": "557058:97578a32-3955-4c5c-939e-58a878437b49", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5170bd39"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzgk8v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Sep/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_216324125_*|*_10007_*:*_1_*:*_74173340_*|*_3_*:*_1_*:*_6831318_*|*_5_*:*_1_*:*_0"}], "description": "On Friday, Sep. 8th Reid Vandewiele and Bryan Jen did some live debugging of rspec tests with a customer. The customer has modules that do direct hiera lookups in manifests. When doing rspec tests of these modules, tests fail `it should compile` on their windows test contexts because hiera tries to load win32 libraries on their OS X workstations.\n\nThis is exactly what DavidS was able to find when doing a recreate. The solution provided by DavidS was also successful in getting their tests to pass.\n\nCustomer mentioned that these tests were working with Hiera gem version 3.1 and 3.2, stopped working when upgraded to 3.4.\n\nBryan Jen identified this PR as the source of the change in behavior:  https://github.com/puppetlabs/hiera/pull/393\n\nWhile better rspec practices would help customers avoid this problem, we should still fix the behavior regression in Hiera.\n\nh3. Reproduction\n\n{code:title=test/manifests/init.pp}\nclass test (\n  $param = hiera('test', 'default'),\n) {\n  # empty body\n}\n\n{code}\n\n{code:title=test/spec/classes/test_spec.rb}\nrequire 'spec_helper'\n\ndescribe 'test' do\n  context 'windows' do\n    let(:facts) {{ 'operatingsystem' => 'windows' }}\n    it { is_expected.to compile }\n  end\nend\n{code}\n\n{code:title=`bundle exec rake spec`}\ntest\n  windows\n    should compile into a catalogue without dependency cycles (FAILED - 1)\n\nFailures:\n\n  1) test windows should compile into a catalogue without dependency cycles\n     Failure/Error: it { is_expected.to compile }\n       error during compilation: Evaluation Error: Error while evaluating a Function Call, can't load shell32 at /Users/reidmv/src/puppet-test/spec/fixtures/modules/test/manifests/init.pp:2:12 on node .delivery.puppetlabs.net\n     # ./spec/classes/test_spec.rb:6:in `block (3 levels) in <top (required)>'\n\nFinished in 0.12493 seconds (files took 0.98195 seconds to load)\n1 example, 1 failure\n\nFailed examples:\n\nrspec ./spec/classes/test_spec.rb:6 # test windows should compile into a catalogue without dependency cycles\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53664", "fixedVersions": [], "id": "53664", "issueType": "Bug", "key": "HI-581", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:97578a32-3955-4c5c-939e-58a878437b49", "resolution": "Fixed", "resolutionDate": "2017-09-12T03:05:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "If invoked from rspec test for Windows, hiera() attempts `require win32`, fails", "timeSpent": "PT0S", "updated": "2017-09-30T19:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Version updated https://github.com/puppetlabs/hiera/commit/823bd7bb31da2820c3fc122ae544532c331216aa", "created": "2017-09-08T16:19:00.000000"}], "components": [], "created": "2017-09-05T18:25:00.000000", "creator": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@d0b0ff9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzghcv:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Sep/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2084_*|*_5_*:*_1_*:*_501608158_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_251627604"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53528", "fixedVersions": ["HI 3.4.1"], "id": "53528", "issueType": "Task", "key": "HI-580", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "resolution": "Fixed", "resolutionDate": "2017-09-14T11:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Bump hiera version to 3.4.1", "timeSpent": "PT0S", "updated": "2017-09-14T11:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "attachments": [], "comments": [{"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "Merged and in.", "created": "2017-09-05T10:50:00.000000"}, {"author": "557058:836ef76e-8051-48a3-8dc7-005f79695b0e", "body": "[~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e] Any release notes necessary for this one?", "created": "2017-09-08T17:04:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "[~accountid:557058:836ef76e-8051-48a3-8dc7-005f79695b0e] Nooooooooooooooooo.", "created": "2017-09-08T19:29:00.000000"}], "components": [], "created": "2017-08-29T16:49:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1437fd4e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzgc4v:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Sep/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_178045442_*|*_10007_*:*_1_*:*_405193641_*|*_5_*:*_1_*:*_780579127_*|*_6_*:*_1_*:*_0"}], "description": "In https://github.com/puppetlabs/r10k/issues/760, users noticed warnings indicating stack too deep when using r10k with puppet-agent and having more than one version of a dependency of r10k installed. As noted in https://github.com/puppetlabs/r10k/issues/760#issuecomment-325825267, it is because of how rubygems behaves when doing version selection, and also because of how the version of the hiera and puppet gems are declared in their gemspecs.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53939", "fixedVersions": ["HI 3.4.1"], "id": "53939", "issueType": "Task", "key": "HI-579", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "resolution": "Fixed", "resolutionDate": "2017-09-05T10:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Begin hardcoding hiera version into gemspec", "timeSpent": "PT0S", "updated": "2017-09-14T11:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:5152a728-e7dc-4d9d-8c26-407dee8c869d", "attachments": [], "comments": [{"author": "557058:5152a728-e7dc-4d9d-8c26-407dee8c869d", "body": "Stepping thru the code brought me to here:  https://github.com/puppetlabs/hiera/blob/3.4.0/lib/hiera/backend.rb#L332\n\nwhere Hiera checks if *fqdn* is a key of the *facts* hash via *value.include?(segment)*\n- *value* is the facts hash\n- *segment* is the variable to be interpolated, in this case:  *fqdn*\n\nBecause the hash has *fqdn* as a *Symbol* and not a *String*, the check fails, resulting in the *Ignoring bad definition in :hierarchy: 'fqdn/'* error.", "created": "2017-08-24T10:37:00.000000"}, {"author": "557058:5152a728-e7dc-4d9d-8c26-407dee8c869d", "body": "Pull request created:  https://github.com/puppetlabs/hiera/pull/402", "created": "2017-08-24T10:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:5152a728-e7dc-4d9d-8c26-407dee8c869d] What I want to know is how facts ended up being encoded with symbols as keys - they are not supposed to be in that form. I therefore think that the problem is in how tests are set up. That is - something brought in by these:\n{code}\nrequire \"puppetlabs_spec_helper/module_spec_helper\"\nrequire \"rspec-puppet-facts\"\ninclude RspecPuppetFacts\n{code}\n\nWe do not want {{$facts}} to be populated with symbol keys. While that may have worked in the past because there was string/symbol monkey patching in place that equated symbols with strings - that monkeypatch is gone in puppet 5 because of all the problems it created. We do not want that back and the correct thing to do here is to ensure that tests feed the right data into the rest of the machinery.\n\nThe proposed solution, to search again with the key turned into a symbol has several other problems:\n* it makes all searches slower since for every key that is not found in a particular backend, there would be an extra lookup.\n* hiera 3 is deprecated in favor of hiera 5, and the change does not carry forward\n\nI think the real solution is to fix the testing framework.", "created": "2017-12-06T02:24:00.000000"}, {"author": "623c152dee1b5a007029373b", "body": "Has anybody found a solution for this issue?\u00a0 I have rspec tests failing because facts are not resolving properly.\u00a0 When rspec runs I see the same error as originally reported.\n{code:java}\nDEBUG: 2018-08-15 09:08:15 -0400: Hiera YAML backend starting\nDEBUG: 2018-08-15 09:08:15 -0400: Looking up chrony::packages in YAML backend\nDEBUG: 2018-08-15 09:08:15 -0400: Ignoring bad definition in :hierarchy: ''\n{code}\nhiera.yaml looks like this.\u00a0\n{code:java}\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"%{operatingsystem}\"\n  - common\n:yaml:\n  :datadir: 'data'\n{code}\n\u00a0\n\n\u00a0While I can hack around this I'd rather have tests for each operating system run in the same code block.\n\nHere are the gems that I have installed.\n{code:java}\npuppet (5.5.3, 4.2.3)\npuppet-blacksmith (3.4.0)\npuppet-debugger (0.9.0, 0.8.1)\npuppet-lint (2.3.3, 2.3.0)\npuppet-module-posix-default-r2.3 (0.1.1)\npuppet-module-posix-dev-r2.3 (0.0.1)\npuppet-module-posix-system-r2.3 (0.1.1)\npuppet-retrospec (1.4.1)\npuppet-syntax (2.4.1)\npuppet_facts (0.2.1)\npuppetlabs_spec_helper (2.4.0, 2.3.2\n\nrspec (3.7.0)\nrspec-core (3.7.1, 3.7.0)\nrspec-expectations (3.7.0, 3.6.0)\nrspec-its (1.2.0)\nrspec-mocks (3.7.0)\nrspec-puppet (2.6.14, 2.6.9)\nrspec-puppet-facts (1.8.0)\nrspec-puppet-utils (3.4.0)\nrspec-support (3.7.0, 3.6.0)\n{code}", "created": "2018-08-15T07:15:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Closing this due to lack of activity.", "created": "2020-01-22T20:52:00.000000"}], "components": [], "created": "2017-08-24T10:28:00.000000", "creator": "557058:5152a728-e7dc-4d9d-8c26-407dee8c869d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@12b0ec35"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzg7u7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_367632465_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_75792070842_*|*_10005_*:*_1_*:*_1769"}], "description": "h1. Summary\nWhen I try to perform a *hiera.lookup* request in a spec, the hierarchy doesn't find the *kernel* fact.  Because of that, Hiera shows this message:\n\n{code}Ignoring bad definition in :hierarchy: 'kernel/'{code}\n\nAnd as a result, the data I need is not found.\n\nh2. spec/spec_helper.rb\n{code}\nrequire \"puppetlabs_spec_helper/module_spec_helper\"\nrequire \"rspec-puppet-facts\"\ninclude RspecPuppetFacts\n\n# needed to perform lookups inside specs\nrequire \"hiera\"\n\nRSpec.configure do |c|\n  c.default_facts = {\n    \"hostname\"      => `hostname -f`.strip,\n    \"ipaddress\"     => `hostname -i`.strip,\n    \"puppetversion\" => \"4.6.1\",\n  }\n\n  c.fail_fast = true if ENV['FAIL_FAST'] == \"true\"\n\n  # needed to evaluate hiera lookups in the puppet code\n  c.hiera_config = \"spec/fixtures/hiera/hiera.yaml\"\n\n  if ENV['COVERAGE'] == \"true\"\n    c.after(:suite) do\n      RSpec::Puppet::Coverage.report!\n    end\n  end\nend\n\n# Default to \"no\" as our specs fail on default facts (i.e. \"$::networking\")\nENV['STRICT_VARIABLES'] = \"no\" unless ENV['STRICT_VARIABLES']\n{code}\n\nh2. spec/fixtures/hiera/hiera.yaml\n{code}\n:backends:\n  - yaml\n:yaml:\n  :datadir: spec/fixtures/hiera\n:hierarchy:\n  - \"fqdn/%{fqdn}\"\n  - \"environment/%{environment}\"\n  - \"hostgroup/%{hostgroup}\"\n  - \"os/%{operatingsystem}/%{operatingsystemrelease}\"\n  - \"os/%{operatingsystem}\"\n  - \"kernel/%{kernel}\"\n  - \"common\"\n{code}\n\nh2. spec/fixtures/hiera/os/Ubuntu.yaml\n{code}\ncron_service: 'cron'\n{code}\n\nh2. spec/fixtures/hiera/kernel/Linux.yaml\n{code}\ncron_service: 'crond'\n{code}\n\nh2. manifests/linux.pp\n{code}\nclass ta_base::linux() {\n  $cron_service = hiera('cron_service')\n\n  service { $cron_service:\n    enable     => true,\n    ensure     => true,\n    hasrestart => true,\n    hasstatus  => true,\n  }\n}\n{code}\n\nh2. spec/classes/linux_spec.rb\n{code}\nrequire \"spec_helper\"\n\nhiera = Hiera.new(:config => \"spec/fixtures/hiera/hiera.yaml\")\n\ndescribe \"ta_base::linux\" do\n  on_supported_os.each do |os, facts|\n    context \"on #{os}\" do\n      let(:facts) { facts }\n\n      cron_service = hiera.lookup(\"cron_service\", nil, facts)\n\n      it { is_expected.to compile.with_all_deps }\n\n      it { is_expected.to contain_service(cron_service)\n        .with(\n          \"enable\"  => true,\n          \"ensure\"  => true\n        )\n      }\n    end\n  end\nend\n{code}\n\nh2. Example run\n{code}\n$ SPEC=spec/classes/linux_spec.rb FAIL_FAST=true rake spec_standalone\n/home/dunk/.rvm/rubies/ruby-2.3.1/bin/ruby -I/home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/rspec-core-3.6.0/lib:/home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/rspec-support-3.6.0/lib/home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/rspec-core-3.6.0/exe/rspec spec/classes/linux_spec.rb --color\nDEBUG: 2017-08-23 17:38:05 -0600: Hiera YAML backend starting\nDEBUG: 2017-08-23 17:38:05 -0600: Looking up cron_service in YAML backend\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'fqdn/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'environment/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'hostgroup/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'os//'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'os/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'kernel/'\nDEBUG: 2017-08-23 17:38:05 -0600: Looking for data source common\nDEBUG: 2017-08-23 17:38:05 -0600: Looking up cron_service in YAML backend\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'fqdn/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'environment/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'hostgroup/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'os//'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'os/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'kernel/'\nDEBUG: 2017-08-23 17:38:05 -0600: Looking for data source common\nDEBUG: 2017-08-23 17:38:05 -0600: Looking up cron_service in YAML backend\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'fqdn/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'environment/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'hostgroup/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'os//'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'os/'\nDEBUG: 2017-08-23 17:38:05 -0600: Ignoring bad definition in :hierarchy: 'kernel/'\nDEBUG: 2017-08-23 17:38:05 -0600: Looking for data source common\n\nta_base::linux\n  on centos-6-x86_64\n    should compile into a catalogue without dependency cycles\n    should contain Service[] with enable => true and ensure => true (FAILED - 1)\n\nFailures:\n\n  1) ta_base::linux on centos-6-x86_64 should contain Service[] with enable => true and ensure => true\n     Failure/Error:\n       it { is_expected.to contain_service(cron_service)\n         .with(\n           \"enable\"  => true,\n           \"ensure\"  => true\n         )\n       }\n\n     ArgumentError:\n       No title provided and \"Service\" is not a valid resource reference\n     # /home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/puppet-4.7.0/lib/puppet/resource.rb:572:in `extract_type_and_title'\n     # /home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/puppet-4.7.0/lib/puppet/resource.rb:557:in `type_and_title'\n     # /home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/puppet-4.7.0/lib/puppet/resource/catalog.rb:355:in `resource'\n     # /home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/rspec-puppet-2.6.8/lib/rspec-puppet/matchers/create_generic.rb:85:in `matches?'\n     # ./spec/classes/linux_spec.rb:17:in `block (4 levels) in <top (required)>'\n\nFinished in 3.93 seconds (files took 4.26 seconds to load)\n2 examples, 1 failure\n\nFailed examples:\n\nrspec ./spec/classes/linux_spec.rb[1:1:2] # ta_base::linux on centos-6-x86_64 should contain Service[] with enable => true and ensure => true\n\n/home/dunk/.rvm/rubies/ruby-2.3.1/bin/ruby -I/home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/rspec-core-3.6.0/lib:/home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/rspec-support-3.6.0/lib/home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing/gems/rspec-core-3.6.0/exe/rspec spec/classes/linux_spec.rb --color failed\n{code}\n\nFrom what I can see, this comes down to the `facts` hash having `kernel` as a `Symbol` instead of a `String`, because it properly loads `spec/fixtures/hiera/kernel/Linux.yaml` when I do this:\n\n{code}\n# manifest\nfacts['kernel'] = \"Linux\"\ncron_service = hiera.lookup(\"cron_service\", nil, facts)\n\n# log output from running test\nDEBUG: 2017-08-23 17:39:14 -0600: Looking up cron_service in YAML backend\nDEBUG: 2017-08-23 17:39:14 -0600: Ignoring bad definition in :hierarchy: 'fqdn/'\nDEBUG: 2017-08-23 17:39:14 -0600: Ignoring bad definition in :hierarchy: 'environment/'\nDEBUG: 2017-08-23 17:39:14 -0600: Ignoring bad definition in :hierarchy: 'hostgroup/'\nDEBUG: 2017-08-23 17:39:14 -0600: Ignoring bad definition in :hierarchy: 'os//'\nDEBUG: 2017-08-23 17:39:14 -0600: Ignoring bad definition in :hierarchy: 'os/'\nDEBUG: 2017-08-23 17:39:14 -0600: Looking for data source kernel/Linux\nDEBUG: 2017-08-23 17:39:14 -0600: Found cron_service in kernel/Linux\n{code}\n* The last 2 lines being the key difference:\n{code}\nLooking for data source kernel/Linux\nFound cron_service in kernel/Linux\n{code}\n\nSo, am I configuring something incorrectly?\n\nh2. Environment\n{code}\nBundler   1.14.6\nRubygems  2.5.1\nRuby      2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]\nGEM_HOME  /home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing\nGEM_PATH  /home/dunk/.rvm/gems/ruby-2.3.1@puppet-testing:/home/dunk/.rvm/gems/ruby-2.3.1@global\nRVM       1.29.1 (latest)\nGit       1.9.1\nPlatform  x86_64-linux\nrubygems-bundler (1.4.4)\n{code}\n\nh3. Gemfile\n\n{code}\nsource \"https://rubygems.org\"\n\ngem 'puppet', '4.7.0'\n\ngroup :test do\n  gem 'puppet-lint', '2.3.0'\n  gem 'puppetlabs_spec_helper', '2.2.0'\n  gem 'rspec-puppet', '2.6.8'\n  gem 'parallel_tests', '2.14.2'\n  gem 'rspec-puppet-facts', '1.8.0', :require => false\n  gem 'metadata-json-lint', '2.0.2'\n  gem 'semantic_puppet', '1.0.1' # this gem is needed (for metadata-json-lint) until we move to Puppet 4.9.x\nend\n\ngroup :development, :test do\n  gem 'beaker-rspec', '6.1.0', :require => false\n  gem 'pry', '0.10.4'\nend\n{code}\n\nh3. Gemfile.lock\n{code}\nGEM\n  remote: https://rubygems.org/\n  specs:\n    CFPropertyList (2.3.5)\n    addressable (2.5.1)\n      public_suffix (~> 2.0, >= 2.0.2)\n    aws-sdk-v1 (1.67.0)\n      json (~> 1.4)\n      nokogiri (~> 1)\n    beaker (3.20.0)\n      aws-sdk-v1 (~> 1.57)\n      beaker-hiera (~> 0.0)\n      beaker-hostgenerator\n      beaker-puppet (~> 0.0)\n      beaker-vmpooler (~> 0.1)\n      docker-api\n      fission (~> 0.4)\n      fog (~> 1.38)\n      google-api-client (~> 0.9)\n      hocon (~> 1.0)\n      in-parallel (~> 0.1)\n      inifile (~> 3.0)\n      minitar (~> 0.5.4)\n      minitest (~> 5.4)\n      net-scp (~> 1.2)\n      net-ssh (~> 4.0)\n      open_uri_redirections (~> 0.2.1)\n      rsync (~> 1.0.9)\n      stringify-hash (~> 0.0)\n      thor (~> 0.19)\n      unf (~> 0.1)\n    beaker-hiera (0.1.1)\n      stringify-hash (~> 0.0.0)\n    beaker-hostgenerator (0.10.1)\n      deep_merge (~> 1.0)\n      stringify-hash (~> 0.0.0)\n    beaker-puppet (0.3.0)\n      in-parallel (~> 0.1)\n      stringify-hash (~> 0.0.0)\n    beaker-rspec (6.1.0)\n      beaker (~> 3.0)\n      rspec (~> 3.0)\n      serverspec (~> 2)\n      specinfra (~> 2)\n    beaker-vmpooler (0.1.0)\n      rbvmomi (~> 1.9)\n      stringify-hash (~> 0.0.0)\n    builder (3.2.3)\n    coderay (1.1.1)\n    declarative (0.0.9)\n    declarative-option (0.1.0)\n    deep_merge (1.1.1)\n    diff-lcs (1.3)\n    docker-api (1.33.6)\n      excon (>= 0.38.0)\n      json\n    excon (0.57.1)\n    facter (2.4.6)\n    facterdb (0.3.11)\n      facter\n      jgrep\n    faraday (0.12.1)\n      multipart-post (>= 1.2, < 3)\n    fast_gettext (1.1.0)\n    fission (0.5.0)\n      CFPropertyList (~> 2.2)\n    fog (1.40.0)\n      fog-aliyun (>= 0.1.0)\n      fog-atmos\n      fog-aws (>= 0.6.0)\n      fog-brightbox (~> 0.4)\n      fog-cloudatcost (~> 0.1.0)\n      fog-core (~> 1.43)\n      fog-digitalocean (>= 0.3.0)\n      fog-dnsimple (~> 1.0)\n      fog-dynect (~> 0.0.2)\n      fog-ecloud (~> 0.1)\n      fog-google (<= 0.1.0)\n      fog-json\n      fog-local\n      fog-openstack\n      fog-powerdns (>= 0.1.1)\n      fog-profitbricks\n      fog-rackspace\n      fog-radosgw (>= 0.0.2)\n      fog-riakcs\n      fog-sakuracloud (>= 0.0.4)\n      fog-serverlove\n      fog-softlayer\n      fog-storm_on_demand\n      fog-terremark\n      fog-vmfusion\n      fog-voxel\n      fog-vsphere (>= 0.4.0)\n      fog-xenserver\n      fog-xml (~> 0.1.1)\n      ipaddress (~> 0.5)\n      json (>= 1.8, < 2.0)\n    fog-aliyun (0.1.0)\n      fog-core (~> 1.27)\n      fog-json (~> 1.0)\n      ipaddress (~> 0.8)\n      xml-simple (~> 1.1)\n    fog-atmos (0.1.0)\n      fog-core\n      fog-xml\n    fog-aws (1.4.0)\n      fog-core (~> 1.38)\n      fog-json (~> 1.0)\n      fog-xml (~> 0.1)\n      ipaddress (~> 0.8)\n    fog-brightbox (0.11.0)\n      fog-core (~> 1.22)\n      fog-json\n      inflecto (~> 0.0.2)\n    fog-cloudatcost (0.1.2)\n      fog-core (~> 1.36)\n      fog-json (~> 1.0)\n      fog-xml (~> 0.1)\n      ipaddress (~> 0.8)\n    fog-core (1.44.3)\n      builder\n      excon (~> 0.49)\n      formatador (~> 0.2)\n    fog-digitalocean (0.3.0)\n      fog-core (~> 1.42)\n      fog-json (>= 1.0)\n      fog-xml (>= 0.1)\n      ipaddress (>= 0.5)\n    fog-dnsimple (1.0.0)\n      fog-core (~> 1.38)\n      fog-json (~> 1.0)\n    fog-dynect (0.0.3)\n      fog-core\n      fog-json\n      fog-xml\n    fog-ecloud (0.3.0)\n      fog-core\n      fog-xml\n    fog-google (0.1.0)\n      fog-core\n      fog-json\n      fog-xml\n    fog-json (1.0.2)\n      fog-core (~> 1.0)\n      multi_json (~> 1.10)\n    fog-local (0.3.1)\n      fog-core (~> 1.27)\n    fog-openstack (0.1.21)\n      fog-core (>= 1.40)\n      fog-json (>= 1.0)\n      ipaddress (>= 0.8)\n    fog-powerdns (0.1.1)\n      fog-core (~> 1.27)\n      fog-json (~> 1.0)\n      fog-xml (~> 0.1)\n    fog-profitbricks (3.0.0)\n      fog-core (~> 1.42)\n      fog-json (~> 1.0)\n    fog-rackspace (0.1.5)\n      fog-core (>= 1.35)\n      fog-json (>= 1.0)\n      fog-xml (>= 0.1)\n      ipaddress (>= 0.8)\n    fog-radosgw (0.0.5)\n      fog-core (>= 1.21.0)\n      fog-json\n      fog-xml (>= 0.0.1)\n    fog-riakcs (0.1.0)\n      fog-core\n      fog-json\n      fog-xml\n    fog-sakuracloud (1.7.5)\n      fog-core\n      fog-json\n    fog-serverlove (0.1.2)\n      fog-core\n      fog-json\n    fog-softlayer (1.1.4)\n      fog-core\n      fog-json\n    fog-storm_on_demand (0.1.1)\n      fog-core\n      fog-json\n    fog-terremark (0.1.0)\n      fog-core\n      fog-xml\n    fog-vmfusion (0.1.0)\n      fission\n      fog-core\n    fog-voxel (0.1.0)\n      fog-core\n      fog-xml\n    fog-vsphere (1.11.2)\n      fog-core\n      rbvmomi (~> 1.9)\n    fog-xenserver (0.3.0)\n      fog-core\n      fog-xml\n    fog-xml (0.1.3)\n      fog-core\n      nokogiri (>= 1.5.11, < 2.0.0)\n    formatador (0.2.5)\n    gettext (3.2.4)\n      locale (>= 2.0.5)\n      text (>= 1.3.0)\n    gettext-setup (0.26)\n      fast_gettext (~> 1.1.0)\n      gettext (>= 3.0.2)\n      locale\n    google-api-client (0.13.1)\n      addressable (~> 2.5, >= 2.5.1)\n      googleauth (~> 0.5)\n      httpclient (>= 2.8.1, < 3.0)\n      mime-types (~> 3.0)\n      representable (~> 3.0)\n      retriable (>= 2.0, < 4.0)\n    googleauth (0.5.1)\n      faraday (~> 0.9)\n      jwt (~> 1.4)\n      logging (~> 2.0)\n      memoist (~> 0.12)\n      multi_json (~> 1.11)\n      os (~> 0.9)\n      signet (~> 0.7)\n    hiera (3.4.0)\n    hocon (1.2.5)\n    httpclient (2.8.3)\n    in-parallel (0.1.17)\n    inflecto (0.0.2)\n    inifile (3.0.0)\n    ipaddress (0.8.3)\n    jgrep (1.4.1)\n      json\n    json (1.8.6)\n    json-schema (2.8.0)\n      addressable (>= 2.4)\n    json_pure (1.8.6)\n    jwt (1.5.6)\n    little-plugger (1.1.4)\n    locale (2.1.2)\n    logging (2.2.2)\n      little-plugger (~> 1.1)\n      multi_json (~> 1.10)\n    mcollective-client (2.11.0)\n      json\n      stomp\n      systemu\n    memoist (0.16.0)\n    metaclass (0.0.4)\n    metadata-json-lint (2.0.2)\n      json-schema (~> 2.8)\n      spdx-licenses (~> 1.0)\n    method_source (0.8.2)\n    mime-types (3.1)\n      mime-types-data (~> 3.2015)\n    mime-types-data (3.2016.0521)\n    mini_portile2 (2.2.0)\n    minitar (0.5.4)\n    minitest (5.10.2)\n    mocha (1.2.1)\n      metaclass (~> 0.0.1)\n    multi_json (1.12.1)\n    multipart-post (2.0.0)\n    net-scp (1.2.1)\n      net-ssh (>= 2.6.5)\n    net-ssh (4.1.0)\n    net-telnet (0.1.1)\n    nokogiri (1.8.0)\n      mini_portile2 (~> 2.2.0)\n    open_uri_redirections (0.2.1)\n    os (0.9.6)\n    parallel (1.11.2)\n    parallel_tests (2.14.2)\n      parallel\n    pry (0.10.4)\n      coderay (~> 1.1.0)\n      method_source (~> 0.8.1)\n      slop (~> 3.4)\n    public_suffix (2.0.5)\n    puppet (4.7.0)\n      facter (> 2.0, < 4)\n      hiera (>= 2.0, < 4)\n      json_pure (~> 1.8)\n    puppet-lint (2.3.0)\n    puppet-syntax (2.4.1)\n      rake\n    puppetlabs_spec_helper (2.2.0)\n      mocha (~> 1.0)\n      puppet-lint (~> 2.0)\n      puppet-syntax (~> 2.0)\n      rspec-puppet (~> 2.0)\n    rake (12.0.0)\n    rbvmomi (1.11.3)\n      builder (~> 3.0)\n      json (>= 1.8)\n      nokogiri (~> 1.5)\n      trollop (~> 2.1)\n    representable (3.0.4)\n      declarative (< 0.1.0)\n      declarative-option (< 0.2.0)\n      uber (< 0.2.0)\n    retriable (3.0.2)\n    rspec (3.6.0)\n      rspec-core (~> 3.6.0)\n      rspec-expectations (~> 3.6.0)\n      rspec-mocks (~> 3.6.0)\n    rspec-core (3.6.0)\n      rspec-support (~> 3.6.0)\n    rspec-expectations (3.6.0)\n      diff-lcs (>= 1.2.0, < 2.0)\n      rspec-support (~> 3.6.0)\n    rspec-its (1.2.0)\n      rspec-core (>= 3.0.0)\n      rspec-expectations (>= 3.0.0)\n    rspec-mocks (3.6.0)\n      diff-lcs (>= 1.2.0, < 2.0)\n      rspec-support (~> 3.6.0)\n    rspec-puppet (2.6.8)\n      rspec\n    rspec-puppet-facts (1.8.0)\n      facter\n      facterdb (>= 0.3.0)\n      json\n      mcollective-client\n      puppet\n    rspec-support (3.6.0)\n    rsync (1.0.9)\n    semantic_puppet (1.0.1)\n      gettext-setup (>= 0.3)\n    serverspec (2.39.1)\n      multi_json\n      rspec (~> 3.0)\n      rspec-its\n      specinfra (~> 2.68)\n    sfl (2.3)\n    signet (0.7.3)\n      addressable (~> 2.3)\n      faraday (~> 0.9)\n      jwt (~> 1.5)\n      multi_json (~> 1.10)\n    slop (3.6.0)\n    spdx-licenses (1.1.0)\n    specinfra (2.69.0)\n      net-scp\n      net-ssh (>= 2.7, < 5.0)\n      net-telnet\n      sfl\n    stomp (1.4.4)\n    stringify-hash (0.0.2)\n    systemu (2.6.5)\n    text (1.3.1)\n    thor (0.19.4)\n    trollop (2.1.2)\n    uber (0.1.0)\n    unf (0.1.4)\n      unf_ext\n    unf_ext (0.0.7.4)\n    xml-simple (1.1.5)\n\nPLATFORMS\n  ruby\n\nDEPENDENCIES\n  beaker-rspec (= 6.1.0)\n  metadata-json-lint (= 2.0.2)\n  parallel_tests (= 2.14.2)\n  pry (= 0.10.4)\n  puppet (= 4.7.0)\n  puppet-lint (= 2.3.0)\n  puppetlabs_spec_helper (= 2.2.0)\n  rspec-puppet (= 2.6.8)\n  rspec-puppet-facts (= 1.8.0)\n  semantic_puppet (= 1.0.1)\n\nBUNDLED WITH\n   1.14.6\n{code}", "environment": "See environment section in issue description", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53878", "fixedVersions": [], "id": "53878", "issueType": "Bug", "key": "HI-578", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:5152a728-e7dc-4d9d-8c26-407dee8c869d", "resolution": "Incomplete", "resolutionDate": "2020-01-22T20:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Symbolized facts causes \"ignore bad definition\" error in hierarchy", "timeSpent": "PT0S", "updated": "2020-01-22T20:57:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The standalone {{hiera}} CLI has been broken in many ways since quite some time. It is deprecated in favor of the {{lookup}} CLI.\nThe {{hiera}} CLI only works with hiera 3 format and does not take data in environments and modules into account.\n\nI think we could take this ticket to improve the error message - we are however reluctant to change anything in the hiera 3 codebase except dealing with security issues and blocking problems.", "created": "2017-08-10T03:05:00.000000"}, {"author": "557058:f950b51f-34da-4ab4-974c-82e6f4989984", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] that comment was exactly what I'm after, thanks.  ", "created": "2017-08-10T04:11:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "It would be good to add an explicit note about incompatibility with hiera 5 to https://docs.puppet.com/puppet/latest/hiera_intro.html#some-features-are-deprecated where we mention that the hiera CLI tool is deprecated", "created": "2017-08-10T09:22:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Repurpose this ticket to a DOCS ticket?", "created": "2017-08-10T10:22:00.000000"}, {"author": "557058:41dc5120-addb-42c7-aff4-2d00c35c948c", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] We don't change to DOCS tickets if it's related to a particular project, so I think it's in the right place. Then just marked with Release notes needed. [~accountid:557058:836ef76e-8051-48a3-8dc7-005f79695b0e] Do you need more info from Henrik?", "created": "2017-08-22T13:05:00.000000"}, {"author": "557058:836ef76e-8051-48a3-8dc7-005f79695b0e", "body": "[~accountid:557058:41dc5120-addb-42c7-aff4-2d00c35c948c] [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] I think what's already in this ticket is sufficient for any docs updates. I also agree that we should clarify this in the Release Notes field of this ticket, and add to the release notes for Puppet versions containing Hiera 5 confirmation that the standalone {{hiera}} CLI does not work with v4 or v5 config files.\n\nFor instance, in the Puppet 4.9 release notes, we state that \"The version 4 format will continue to work until the next major release where it will be removed\", and we note several times that the v3-era hiera family of tools and functions are deprecated, but I can't find in any version's release notes where we specify that the {{hiera}} CLI will throw an error and fail with a v4 or v5 config file.", "created": "2017-08-22T13:13:00.000000"}, {"author": "557058:41dc5120-addb-42c7-aff4-2d00c35c948c", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Could you clarify Garrett's point above on the behavior of the hiera CLI?", "created": "2017-08-25T10:46:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The hiera CLI does not work with hiera 4 or 5 (it has never worked with anything but version 3 (or older)), it is strictly hiera 3 - it is also deprecated in favor of the lookup CLI. (The hiera CLI has a long history of bugs). Even when remaining on a hiera version 3 config, the recommendation is to not use the hiera CLI as the result can be incorrect (i.e. different than when used with puppet). The best way to test something is to use the lookup CLI or to run a simple manifest with the hiera function call or lookup call for the key in question as this provides a result that is the same as what you get when using hiera + puppet in combination in a particular environment.\n", "created": "2017-08-27T06:54:00.000000"}, {"author": "557058:836ef76e-8051-48a3-8dc7-005f79695b0e", "body": "Documentation project clone of this ticket was closed as Resolved, so I'm closing this as well. If more docs work is necessary, I'd recommend filing a DOCUMENT ticket so it can be triaged by the docs team.\n\nRemoving myself as the assignee because I'm no longer on the docs team.", "created": "2018-09-14T16:34:00.000000"}], "components": ["DOCS"], "created": "2017-08-09T19:34:00.000000", "creator": "557058:f950b51f-34da-4ab4-974c-82e6f4989984", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4ee48c1b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzg5x3:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Known Issue"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "The standalone and deprecated `hiera` CLI does not work with hiera version 5. Please use the `lookup` CLI instead as it works with hiera versions 3, 4 and 5."}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_8195_*|*_1_*:*_1_*:*_1604095033_*|*_3_*:*_1_*:*_7525838422_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_25505694379"}], "description": "*Overview*\nSometimes you need to use the standalone {{hiera}} command to debug a hierarchy when working with tools such as {{onceover}} or when setting up a whole {{puppet lookup}} environment is impractical.\n\nIf this is attempted using the {{hiera}} command shipped in puppet-agent-1.10.5-1.el7.x86_64.rpm user will always encounter a confusing error if {{version}} is set to {{> 3}} in the {{hiera.yaml}} file\n\n*Expected result*\nExpect to be able to lookup data item on the command line using {{hiera}} command and hiera v5 config file\n\n*Actual result*\nUser receives the error:\n{noformat}Failed to start Hiera: RuntimeError: v4 hiera.yaml is only to be used inside an environment or a module and cannot be given to the global hiera\n{noformat}\n*Steps to reporoduce*\n1. Hiera.yaml\n{noformat}---\nversion: 5\ndefaults: \n  datadir: hieradata\n  data_hash: yaml_data\n\nhierarchy:\n  - name: \"Common data\"\n    path: \"common.yaml\"\n{noformat}\n2. Lookup data as users:\n{noformat}hiera -c hiera.yaml ruh::roh\nFailed to start Hiera: RuntimeError: v4 hiera.yaml is only to be used inside an environment or a module and cannot be given to the global hiera\n{noformat}\n*Analysis*\nThe error message seems to indicate that the hiera configuration file uses the old v4 format but it doesn't, its definitely version 5 and works fine with {{puppet lookup}} if dropped into the correct directory.\n\nLooking at the sourcecode, versions > 3 will allways encounter this error and Indeed the error can be cleared by declaring {{version: 3}} in the {{hiera.yaml}} file. I didn't check if this 'trick' still lets you work with hiera 5 functionality and wouldn't recommend it.\n\n*Workarounds*\nSetup the system to use {{puppet lookup}} (?)\n\n*Desired fix*\nI'm not sure what is supposed to happen here. I understand that hiera is now part of puppet but where does this leave the standalone hiera command? Is it intended to work at all? Is it deprecated in favour of {{puppet lookup}}? Is it only intended to work with {{hiera.yaml}} files v3 and earlier?\n\nWould be great to get some clarity around these issues as the error message about v4 configuration files is confusing when file is already in v5 format.", "environment": "RHEL7\n$ which hiera\n/opt/puppetlabs/bin/hiera\n]$ hiera --version\n3.3.2\n$ rpm -qf /opt/puppetlabs/bin/hiera\npuppet-agent-1.10.5-1.el7.x86_64\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53877", "fixedVersions": [], "id": "53877", "issueType": "Bug", "key": "HI-577", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:f950b51f-34da-4ab4-974c-82e6f4989984", "resolution": "Fixed", "resolutionDate": "2018-09-14T16:34:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Document that standalone `hiera` CLI does not support hiera v5 config file (errors)", "timeSpent": "PT0S", "updated": "2018-09-14T16:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "This failure is the result of the {{install_puppet_agent_dev_repo_on}} method corrupting the {{download_url}} for the package after the first host.\nThis issue is blocked on the resolution of BKR-1159", "created": "2017-07-13T07:49:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Verified hiera is working as expected with beaker-puppet 0.3.0 released today:\n\nhttps://jenkins.puppetlabs.com/view/OPSWORK/job/platform_puppet-agent_intn-van-sys_suite-daily-hiera-1.10.x/5/", "created": "2017-07-17T15:18:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Since no hiera code changes were required, marking this as a dup of the beaker-puppet issue.", "created": "2017-07-17T15:19:00.000000"}], "components": [], "created": "2017-07-12T17:46:00.000000", "creator": "557058:91233464-4152-4228-81dd-172d43a52a03", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@138d4549"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Method Found", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzfayn:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Jul/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_21031241_*|*_3_*:*_1_*:*_11148382_*|*_10004_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_18272935"}], "description": "Currently, the pre-suites for hiera fail on EC2. Hiera doesn't need a master, but it's attempts to install puppet-agent on the redhat6 agent and that fails.\n\nSee puppet#b80ecfec386f4c4451f10d67b9846dc9babaf062\n\nIt's currently failing with:\n\n{noformat}\n  ec2-34-208-176-196.us-west-2.compute.amazonaws.com (redhat6-64-1) executed in 0.02 seconds\n  Fetching: http://builds.delivery.puppetlabs.net/puppet-agent/265a3511cb79e1ea37e36c25fe06c7300f5fa6fe/repos/el/6/PC1/x86_64el/6/PC1/x86_64/puppet-agent-1.10.4.40.g265a351-1.el6.x86_64.rpm\n    and saving to tmp/repo_configs/el/puppet-agent-1.10.4.40.g265a351-1.el6.x86_64.rpm\n  RuntimeError: Failed to fetch_remote_file 'http://builds.delivery.puppetlabs.net/puppet-agent/265a3511cb79e1ea37e36c25fe06c7300f5fa6fe/repos/el/6/PC1/x86_64el/6/PC1/x86_64/puppet-agent-1.10.4.40.g265a351-1.el6.x86_64.rpm' (404 Not Found)\n{noformat}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54019", "fixedVersions": [], "id": "54019", "issueType": "Bug", "key": "HI-576", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:91233464-4152-4228-81dd-172d43a52a03", "resolution": "Duplicate", "resolutionDate": "2017-07-17T15:19:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update acceptance pre-suite for EC2", "timeSpent": "PT0S", "updated": "2017-07-17T15:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2017-06-12T18:37:00.000000", "creator": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@658345de"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-1273"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzeldr:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Jul/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2483120978_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_688829523"}], "description": "Needs decision - Do we need to externalize strings for classic Hiera? Hiera 5 code is almost entirely contained within Puppet, and therefore had its strings marked along with the rest of Puppet. If we do not need to do this work, we should close HI-534.", "epicLinkSummary": "Translate Puppet Agent components - Phase 3 C++", "estimate": "PT0S", "externalId": "54018", "fixedVersions": [], "id": "54018", "issueType": "Task", "key": "HI-574", "labels": [], "originalEstimate": "PT0S", "parent": "58296", "parentSummary": "Translate Puppet Agent components - Phase 3 C++", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "resolution": "Won't Do", "resolutionDate": "2017-07-19T11:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Needs decision - Do we need to externalize strings for classic Hiera? ", "timeSpent": "PT0S", "updated": "2017-07-19T11:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "community PR https://github.com/puppetlabs/hiera/pull/394", "created": "2017-05-24T12:03:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "merged to master at 3884d5f", "created": "2017-05-26T10:08:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "This was first released in 3.4.0", "created": "2019-09-25T11:58:00.000000"}], "components": [], "created": "2017-05-23T10:31:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1d235e64"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hze6lz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Sep/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_73619430140_*|*_1_*:*_1_*:*_91925745_*|*_10007_*:*_1_*:*_165884173_*|*_5_*:*_1_*:*_0"}], "description": "This will need to be done in facter, hiera, puppet-agent, mco and possibly other projects as well. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53937", "fixedVersions": ["HI 3.4.0"], "id": "53937", "issueType": "Bug", "key": "HI-571", "labels": ["help_wanted", "tech-debt"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2019-09-25T11:58:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update links.puppetlabs.com links to links.puppet.com", "timeSpent": "PT0S", "updated": "2019-09-25T11:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d]", "created": "2017-04-22T05:49:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "A stack trace from the server log would be very helpful to isolate this problem.\n\nIf there's a chance to try an upgrade to PE 2017.1.x/Puppet Agent 1.9.x, then that might solve the problem. Especially if the suspicion is that it stems from the Hiera Filecache class (it's no longer in use).", "created": "2017-04-24T02:41:00.000000"}, {"author": "557058:ea8d8852-0291-4b62-9047-0e4b235efa5d", "body": "Jeff has moved on, but asked for this to be filed.\nWhen reproducing, I used 000, as 640 wasn't restrictive enough. \n\n{code}\n[root@pe-201643-master production]# chmod 000 hieradata/common.yaml\n\n[root@pe-201643-master production]# puppet agent -t\nInfo: Using configured environment 'production'\nInfo: Retrieving pluginfacts\nInfo: Retrieving plugin\nInfo: Loading facts\nError: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, Permission denied - /etc/puppetlabs/code/environments/production/hieradata/common.yaml at /etc/puppetlabs/code/environments/production/manifests/site.pp:5:3 on node pe-201643-master.puppetdebug.vlan\nWarning: Not using cache on failed catalog\nError: Could not retrieve catalog", "created": "2017-04-24T16:50:00.000000"}], "components": [], "created": "2017-04-17T18:18:00.000000", "creator": "557058:ea8d8852-0291-4b62-9047-0e4b235efa5d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6bbc0ff5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzddvj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Apr/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_152607495790_*|*_6_*:*_1_*:*_0"}], "description": "The error is caused by: \n\nhttps://github.com/puppetlabs/hiera/blob/3.2.2/lib/hiera/backend/yaml_backend.rb#L22\n\nSteps to reproduce: \n\n1. Install PE 2016.4.3 with a simple hiera_include('classes') inside of node default in site.pp. \n2. Configure common.yaml with classes: [] \n3. Change permissions on common.yaml from 644 to 640. \n4. Perform two puppet agent runs. \n5. Notice the cryptic error message on the second run.\n\nExpected behavior: \n\nThe helpful error message returned in the first agent run should always be returned.\n\nActual behavior: \n\nThe helpful error message is only returned once and is buried by subsequent agent reports. The cryptic error message is returned on all subsequent agent runs and makes troubleshooting extremely time consuming and costly.\n\nPotential fix: \n\nThe filecache class should not store nil when an exception is thrown. Doing so results in the cryptic error message on all subsequent runs.\n\nI suspect the root cause of the bug is here: https://github.com/puppetlabs/hiera/blob/3.2.2/lib/hiera/filecache.rb#L53\n\nThere is no handler for when when the passed block throws an exception which results in \n{noformat}\n@cache[path][:data] \n{noformat}\nbeing set to nil.\n\nStoring nil causes the cryptic error message on all subsequent runs.\n\n{code}\n[root@abc123 ~]# puppet agent -t --no-noop \nInfo: Using configured environment 'test' \nInfo: Retrieving pluginfacts \nInfo: Retrieving plugin \nInfo: Loading facts \nError: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, Permission denied - /opt/puppet-data/hiera/common.yaml at /etc/puppetlabs/code/environments/test/manifests/site.pp on node abc123.domain.com \nWarning: Not using cache on failed catalog \nError: Could not retrieve catalog; skipping run\n\n[root@abc123 ~]# puppet agent -t --no-noop \nInfo: Using configured environment 'test' \nInfo: Retrieving pluginfacts \nInfo: Retrieving plugin \nInfo: Loading facts \nError: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, undefined method `empty?' for nil:NilClass at /etc/puppetlabs/code/environments/SBX/manifests/site.pp on node abc123.domain.com \nWarning: Not using cache on failed catalog \nError: Could not retrieve catalog; skipping run \n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53932", "fixedVersions": [], "id": "53932", "issueType": "Bug", "key": "HI-569", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:ea8d8852-0291-4b62-9047-0e4b235efa5d", "resolution": "Won't Fix", "resolutionDate": "2022-02-17T00:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera filecache class should not store nil when an exception is thrown", "timeSpent": "PT0S", "updated": "2022-02-17T00:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4d9ca2f6400069eaab82", "attachments": [], "comments": [{"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "This looks like a duplicate of PUP-7359.", "created": "2017-03-29T09:07:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623a4d9ca2f6400069eaab82] Please check again with Puppet 4.10.0 if it solves your problem.", "created": "2017-03-29T15:40:00.000000"}, {"author": "623a4d9ca2f6400069eaab82", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] has puppet 4.10.0 already been released? Don't see it in the YUM repository yet (https://yum.puppetlabs.com/el/7/PC1/x86_64/)", "created": "2017-03-30T01:57:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Any day now...", "created": "2017-03-30T03:46:00.000000"}, {"author": "623a4d9ca2f6400069eaab82", "body": "This is indeed fixed with 4.10 that includes a patch for PUP-7359\nTicket can be closed.", "created": "2017-04-13T01:16:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Great! Thanks for the report and the follow-up [~accountid:623a4d9ca2f6400069eaab82]!", "created": "2017-04-13T01:19:00.000000"}], "components": ["Community"], "created": "2017-03-29T06:05:00.000000", "creator": "623a4d9ca2f6400069eaab82", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2cbc3bb6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzcyyn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Mar/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_34445683_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1244501163"}], "description": "In our hiera datastore we have some values that contain both an encrypted value (encrypted with eyaml) and (a fact) variable:\n{code}\nfull_command: '$USER1$/check_ldap -H ldaps://%{::fqdn} -p 636 -P ENC[PKCS7,MIIB....]'\n{code}\n\nThe %{::fqdn} is not translated into the facts value but passed as a literal. If I remove the encrypted value and put down the real value without encryption, the %{::fqdn} is interpreted again.\n", "environment": "RHEL7, Puppetserver 2.7.2, Puppet-agent 1.9.3", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53659", "fixedVersions": [], "id": "53659", "issueType": "Bug", "key": "HI-567", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4d9ca2f6400069eaab82", "resolution": "Duplicate", "resolutionDate": "2017-04-13T01:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Variables not interpolated when value also includes an eyaml encrypted value", "timeSpent": "PT0S", "updated": "2017-04-13T01:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c241032a-c552-4408-9a96-dcd5a643ff69", "body": "This is another incarnation of the Ruby segfault that should be solved by PA-437.", "created": "2017-03-16T11:24:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Thanks for reporting this [~accountid:557058:89341248-d23e-4b19-a2b6-66b9bb55eb83]!\n\nThis has the same root cause as PUP-7338 and will be fixed by PA-437 (in the current sprint).", "created": "2017-03-16T11:29:00.000000"}], "components": [], "created": "2017-03-15T09:56:00.000000", "creator": "557058:89341248-d23e-4b19-a2b6-66b9bb55eb83", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1f51d5cf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzcmqn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Mar/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_92010397_*|*_6_*:*_1_*:*_0"}], "description": "The hardware pipeline tests of Hiera on the CiscoXR are failing\n\nhttps://jenkins-master-prod-1.delivery.puppetlabs.net/view/puppet-agent/view/hardware/job/platform_puppet-agent_intn-van-sys_suite-hardware-hiera-master/3/#showFailuresLink\n\nThe following tests failed:\n\ntests/yaml_backend.00-setup.rb\ntests/yaml_backend.01-lookup_data_without_a_key.rb\ntests/yaml_backend.02-lookup_data_with_no_options.rb\ntests/yaml_backend.03-lookup_data_with_a_scope.rb\ntests/yaml_backend.04-lookup_data_with_array_search.rb\ntests/yaml_backend.05-lookup_data_with_hash_search.rb\n\nIt appears that Ruby is dying\n\nLast 10 lines of output were:\n\t7ffff57fe000-7ffff5800000 r-xp 00000000 00:00 0                          [vdso]\n\tffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]\n\t\n\t\n\t[NOTE]\n\tYou may have encountered a bug in the Ruby interpreter or extension libraries.\n\tBug reports are welcome.\n\tFor details: http://www.ruby-lang.org/bugreport.html\n\t\n\tsh: line 1: 29306 Aborted                 (core dumped) puppet agent --configprint codedir\n", "environment": "master branch on CiscoXR", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53724", "fixedVersions": [], "id": "53724", "issueType": "CI Blocker", "key": "HI-563", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:89341248-d23e-4b19-a2b6-66b9bb55eb83", "resolution": "Duplicate", "resolutionDate": "2017-03-16T11:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera tests failing on CiscoXR master hardware pipeline", "timeSpent": "PT0S", "updated": "2017-03-19T07:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] is this expected?", "created": "2017-03-07T15:33:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] i believe this is fixed in the most recent (unreleased build):\n{code}\n[root@tj0x2q33kxhsdx6 ~]# puppet apply -e 'notice(hiera(\"array\"))' --environment merge_strategies_p1nlft2w\nWarning: The function 'hiera' is deprecated in favor of using 'lookup'. See https://docs.puppet.com/puppet/4.9.4/reference/deprecated_language.html\n   (file & line not available)\nWarning: /etc/puppetlabs/puppet/hiera.yaml: Use of 'hiera.yaml' version 3 is deprecated. It should be converted to version 5\n   (in /etc/puppetlabs/puppet/hiera.yaml)\nNotice: Scope(Class[main]): [foo]\nNotice: Compiled catalog for tj0x2q33kxhsdx6.delivery.puppetlabs.net in environment merge_strategies_p1nlft2w in 0.10 seconds\nNotice: Applied catalog in 0.10 seconds\n[root@tj0x2q33kxhsdx6 ~]# puppet apply -e 'notice(lookup(\"array\"))' --environment merge_strategies_p1nlft2w\nWarning: /etc/puppetlabs/puppet/hiera.yaml: Use of 'hiera.yaml' version 3 is deprecated. It should be converted to version 5\n   (in /etc/puppetlabs/puppet/hiera.yaml)\nNotice: Scope(Class[main]): [foo]\nNotice: Compiled catalog for tj0x2q33kxhsdx6.delivery.puppetlabs.net in environment merge_strategies_p1nlft2w in 0.10 seconds\nNotice: Applied catalog in 0.02 seconds\n[root@tj0x2q33kxhsdx6 ~]# cat /etc/puppetlabs/code/environments/merge_strategies_p1nlft2w/hieradata/*.yaml\n---\nprofiles:\n  webserver:\n    apache:\n      httpd:\n        modules:\n          - mpm_prefork\n          - php\n          - ssl\narrayed_hash:\n  the_hash:\n    - array1:\n        key1: val1\n        key2: val2\narray:\n  - foo\nprofiles:\n  webserver:\n    apache:\n      httpd:\n        modules:\n          - auth_kerb\n          - authnz_ldap\n          - cgid\n          - php\n          - status\narray:\n  - bar\n{code}\n\nit's probably a dupe of one of the PUP tickets", "created": "2017-03-07T15:33:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "interestingly, {{hiera_array}} merges them:\n{code}\n[root@tj0x2q33kxhsdx6 ~]# puppet apply -e 'notice(hiera_array(\"array\"))' --environment merge_strategies_p1nlft2w\nWarning: The function 'hiera_array' is deprecated in favor of using 'lookup'. See https://docs.puppet.com/puppet/4.9.4/reference/deprecated_language.html\n   (file & line not available)\nWarning: /etc/puppetlabs/puppet/hiera.yaml: Use of 'hiera.yaml' version 3 is deprecated. It should be converted to version 5\n   (in /etc/puppetlabs/puppet/hiera.yaml)\nNotice: Scope(Class[main]): [foo, bar]\nNotice: Compiled catalog for tj0x2q33kxhsdx6.delivery.puppetlabs.net in environment merge_strategies_p1nlft2w in 0.11 seconds\nNotice: Applied catalog in 0.02 seconds\n{code}\n\nIIRC, this is by design?", "created": "2017-03-07T15:34:00.000000"}, {"author": "6041444a19772401136fc37c", "body": "In my understanding, yes hiera_array merging them is expected, not hiera (or default lookup).\n\nI looked for a similar PUP ticket, didn't quite find it. It's not that it's always doing a merge. It's always doing a merge on non-scalar data types. On scalar data types it's as expected.\n\nScott", "created": "2017-03-07T15:55:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] is correct. We had an issue that made both the {{hiera}} and the {{lookup}} function merge arrays when a {{merge_behavior}} was defined in _hiera.yaml_. That was incorrect. The {{merge_behavior}} in _hiera.yaml_ should only be used by the {{hiera_hash}} function and nowhere else. This was fixed in PUP-7286 which will be released in 4.9.4.", "created": "2017-03-07T16:18:00.000000"}], "components": [], "created": "2017-03-07T14:55:00.000000", "creator": "6041444a19772401136fc37c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6ab5be5a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzcelz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Mar/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6601215_*|*_6_*:*_1_*:*_0"}], "description": "We migrated from puppet 3.8 to 4.9\n\nI found that hiera() calls no longer default to the first value found for arrays and hashes. It instead now always does a merge. I tried using the new lookup() command, but it behaves the same.\n\nOur hiera.yaml is setup with \n:merge_behavior: deeper\nWhich I read is now redundant. But that shouldn't affect the default behavior of lookup/hiera\n\nI tested by making simple hieradata entry in common.yaml -\n\n{{hieradata_test: foo}}\n\nThen in our node specific file set \"bar\"\n\nWith this datatype it behaves as expected, reports the first entry - for us, 'bar', the node data.\n\nThen turned it into an array\n{code}\nhieradata_test\n   - 'foo'\n{code}\nIn that case hiera('hieradata_test') returned\n{code}\nNotice: /Stage[main]/Profiles::Hieradebug/Notify[hiera data test: [foo, bar]]/message: defined 'message' as 'hiera data test: [foo, bar]'\n{code}\nI worked around this by changing all of our now 'surprising' calls like this to use lookup() and explicitly setting 'lookup_options' for each key type in common.yaml to 'merge: first'.\n\n\n\n\n", "environment": "Centos 7, puppet-agent-1.9.2-1, puppetserver-2.7.2-1, puppetlabs-release-pc1-1.1.0-5", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53722", "fixedVersions": [], "id": "53722", "issueType": "Bug", "key": "HI-560", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "6041444a19772401136fc37c", "resolution": "Duplicate", "resolutionDate": "2017-03-07T16:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera() and lookup() performing merge by default", "timeSpent": "PT0S", "updated": "2017-03-07T16:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "IIUC, with hiera5 being implemented in puppet, is this ticket necessary anymore?", "created": "2017-06-27T14:44:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The only reason the Hiera component is still included in Puppet 5 is to support 3x custom backends relying on its existence. ", "created": "2017-06-28T01:35:00.000000"}, {"author": "70121:b72c16a2-594d-45f8-90bc-c6bc6c9510a8", "body": "Given hiera 3 is in life-support mode, I don't think this is worth the investment anymore", "created": "2018-09-24T10:30:00.000000"}], "components": [], "created": "2017-02-24T12:28:00.000000", "creator": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "* There is a rake task available in acceptance for the hiera component that can smoke test hiera gems available on builds.puppetlabs.lan \n* Smoke test targets should include Linux, Windows i386, and Windows x86_64"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@697814db"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-1758"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hykqvj:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Jun/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_424717594_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_49410927739_*|*_10005_*:*_1_*:*_6464914"}], "description": "Add smoke tests to the hiera gem, for use in delivery pipelines. This should look very similar to the smoke tests that we decide to use in Puppet as part of PUP-7290.\n\n* Smoke test may include {{hiera --version}}. \n* No platform combinations are required (can just use the generic gem).\n* Test should live in component acceptance suite.\n* Need a recent ruby installed on the system running the test.", "epicLinkSummary": "Fully constructed pipelines for all release-tasks", "estimate": "PT0S", "externalId": "53873", "fixedVersions": [], "id": "53873", "issueType": "Task", "key": "HI-558", "labels": ["tech-debt"], "originalEstimate": "PT0S", "parent": "56105", "parentSummary": "Fully constructed pipelines for all release-tasks", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "resolution": "Won't Do", "resolutionDate": "2018-09-24T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Automate smoke-test of hiera gem release artifacts", "timeSpent": "PT0S", "updated": "2018-09-24T10:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "attachments": [], "comments": [{"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Merged to hiera#LTS-1.7 at https://github.com/puppetlabs/hiera/commit/d3090b39a533c699cce9c5b11d4b5bab16a22997.", "created": "2017-02-27T18:15:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "The new solaris hardware has been successfully tested in the hardware hiera job.", "created": "2017-03-01T10:29:00.000000"}], "components": [], "created": "2017-02-22T16:13:00.000000", "creator": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Acceptance tests all use the new Solaris LDoms"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@58d5fe7f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:89341248-d23e-4b19-a2b6-66b9bb55eb83"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "QA Risk Assessment Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "We are changing solaris hardware used by CI"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzc0g7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_144819963_*|*_1_*:*_1_*:*_167643293_*|*_10007_*:*_1_*:*_271727262_*|*_5_*:*_1_*:*_766806675_*|*_6_*:*_1_*:*_0"}], "description": "We have new SPARC hardware in place and ready to use. We need to update all of the repos (puppet, facter, hiera & pxp-agent) to use the new LDoms. Initially, we will simply update the existing node config files to point to one of the LDoms on the new controller (opdx-a0-sun2.ops.puppetlabs.net). Once we get some kind of API in place, we will switch to that.", "environment": "Puppet Agent CI pipeline", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53926", "fixedVersions": ["HI 3.3.1"], "id": "53926", "issueType": "Task", "key": "HI-556", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "resolution": "Fixed", "resolutionDate": "2017-03-01T10:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Acceptance: Switch to new SPARC hardware", "timeSpent": "PT0S", "updated": "2017-03-10T07:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Docs are being prepared. Meanwhile, the pre-docs (input to the documentation) can be found here: https://docs.google.com/document/d/1KzUA7ELaFnTtjZIjmmyXnkAr6m8G4zulm9VGbeC3ymg/edit#heading=h.cmpij0g6ytdu", "created": "2017-02-12T12:23:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79] and [~accountid:623c08e1562ab90069f8aed4] - think there is already a docs ticket for this. Link this?", "created": "2017-02-12T12:24:00.000000"}, {"author": "557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79", "body": "Pretty sure [~accountid:623c08e1562ab90069f8aed4] is on this, but I don't know which ticket offhand.", "created": "2017-02-23T10:32:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "We wrote this! It's at https://docs.puppet.com/puppet/4.9/hiera_config_yaml_5.html", "created": "2017-03-30T15:48:00.000000"}], "components": ["DOCS"], "created": "2017-02-12T04:59:00.000000", "creator": "557058:8ed100be-9a13-4ed1-92d2-88ac897d6774", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@71054610"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzbw2f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4009638715_*|*_5_*:*_1_*:*_43326549_*|*_6_*:*_1_*:*_0"}], "description": "puppet 4.9.2 is currently issueing the following warning:\n\n{code}\nWarning: /etc/puppetlabs/puppet/hiera.yaml: Use of 'hiera.yaml' version 3 is deprecated. It should be converted to version 5\n   (in /etc/puppetlabs/puppet/hiera.yaml)\n{code}\nhowever, there is no documentation on what that format is supposed to look like, neither in the puppet docs, nor in the hiera docs.\n\n(reading the code, i'm also finding that since after v4 {{trusted.certname}} was dropped from the default hierarchy\u2026)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53721", "fixedVersions": [], "id": "53721", "issueType": "Bug", "key": "HI-555", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:8ed100be-9a13-4ed1-92d2-88ac897d6774", "resolution": "Duplicate", "resolutionDate": "2017-03-30T15:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera v5 configuration format is not documented", "timeSpent": "PT0S", "updated": "2017-03-31T03:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Since we migrated AIX acceptance to the CI.Next master, it looks like this may not be needed after all. ", "created": "2017-02-12T14:23:00.000000"}], "components": [], "created": "2017-02-07T21:48:00.000000", "creator": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ccce8e8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-548"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzbt2v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_405284061_*|*_6_*:*_1_*:*_0"}], "description": "Because AIX is not a vmpooler platform, AIX 7.2 acceptance testing requires a new static node config.\n", "epicLinkSummary": "Add AIX 7.2 as a supported agent platform", "estimate": "PT0S", "externalId": "53602", "fixedVersions": [], "id": "53602", "issueType": "Task", "key": "HI-554", "labels": [], "originalEstimate": "PT0S", "parent": "55957", "parentSummary": "Add AIX 7.2 as a supported agent platform", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "resolution": "Won't Do", "resolutionDate": "2017-02-12T14:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Acceptance: Add static node config for AIX 7.2 testing", "timeSpent": "PT0S", "updated": "2017-02-12T14:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:cedccc1b-f1a9-45c9-a3e5-6b5e96ad99f0", "attachments": [{"attacher": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "created": "2017-02-08T04:03:00.000000", "name": "puppetserver-debug3.log", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14167"}, {"attacher": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "created": "2017-02-08T04:47:00.000000", "name": "puppetserver-trace.log", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14184"}, {"attacher": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "created": "2017-02-08T03:20:00.000000", "name": "server-1724-example.tar.bz2", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14185"}], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:4e3eb0ca-7205-43fb-877c-a175a00d2181], how did you manage to test this on Puppet 4.9.2 - it is not released yet. Are you running from source?\nThe problem sounds similar to older issues where hiera data was read without proper UTF-8 encoding being enforced.\n\nPing [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d], can you think of anything here that could be a regression?\n", "created": "2017-02-07T14:46:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:4e3eb0ca-7205-43fb-877c-a175a00d2181], I tested the above in a yaml file with the latest puppet. It finds and presents the 'realname' without problems.\nAn {{od -c}} on the relevant part gives me:\n{code}\nA   m   m   i   t   z   b 303 270   l   l\n{code}\nIs that what you have in your common.yaml too?", "created": "2017-02-07T16:08:00.000000"}, {"author": "557058:4e3eb0ca-7205-43fb-877c-a175a00d2181", "body": "It was late - so I wrote the puppetserver version in the subject.. googleing couldn't give me a hit showing which puppet version that is :(\nI did restart puppetserver (twice to be sure).\n\nI just looked a bit further, and that exact array, is not loaded via autoloading, but loaded using:\n$users = hiera_hash('eit_users', {})\n\nso its the hiera_hash function most likely.", "created": "2017-02-08T00:32:00.000000"}, {"author": "557058:db3c8c5c-5825-4424-a788-64c2fa922e24", "body": "I moved this to the server project, but perhaps that was premature.", "created": "2017-02-08T01:20:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:4e3eb0ca-7205-43fb-877c-a175a00d2181] It is not totally clear what you are running, and how you manage to trigger the problem you are seeing.\nWe have not been able to reproduce the problem on the version you say you are using.", "created": "2017-02-08T02:40:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "Hi [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd],\n\nPuppetserver is 2.7.2:\n\n{noformat}\n[root@puppet01 ~]# /opt/puppetlabs/bin/puppetserver --version\npuppetserver version: 2.7.2\n{noformat}\n\nagent is 4.8.1:\n\n{noformat}\n[root@test02 ~]# /opt/puppetlabs/bin/puppet --version\n4.8.1\n{noformat}\n\n[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d], yes, we have the same in that file:\n\n{noformat}\n$ grep Lisbeth  envs/production/hieradata/common.yaml  | hexdump -C\n00000000  20 20 20 20 72 65 61 6c  6e 61 6d 65 3a 20 22 4c  |    realname: \"L|\n00000010  69 73 62 65 74 68 20 41  6d 6d 69 74 7a 62 c3 b8  |isbeth Ammitzb..|\n00000020  6c 6c 20 48 61 6e 73 65  6e 22 0a                 |ll Hansen\".|\n0000002b\n{noformat}\n\n({{0xc3 0xb8 == 0303 0270}})\n\nDon't hesitate to ask if there's anything else we can do to help.", "created": "2017-02-08T03:02:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I tried with {{hiera_hash}} too, just to be sure. I still cannot reproduce the problem. Also, how a lookup of 'eit_users' triggers an error with \"Lookup of key 'common::system::enable_selinux' failed\" is incomprehensible.\n\nI tried with Puppet 4.8.1 too. Still not able to reproduce.", "created": "2017-02-08T03:02:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] agreed, I don't see what the enable_selinux variable has to do with this. Changing the {{\u00f8}} to {{oe}} makes the error go away and everything work fine...", "created": "2017-02-08T03:07:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:6d9f4174-bf47-424d-a46a-6940b2255f29] [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] The diff may be the locale setting that defines the default locale of the server.", "created": "2017-02-08T03:10:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:6d9f4174-bf47-424d-a46a-6940b2255f29], can you please enable debug logging on the server and convey the server log where the error is triggered?", "created": "2017-02-08T03:15:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "Example environment which exhibits the same behavior", "created": "2017-02-08T03:21:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "I created a tiny test environment that reproduces the error: [^server-1724-example.tar.bz2]\n\nThe error message is a bit different though:\n\n{noformat}\nError: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, \"\"\\xC3\"\" on US-ASCII at /etc/puppetlabs/code/envs/test/manifests/site.pp:2:8 on node rune-test-rsnapshot.petardo\n{noformat}\n\nI'll enable debug logging and try again.", "created": "2017-02-08T03:22:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "[^puppetserver-debug3.log] is a log with debug output. There are a few puppet runs in there -- didn't want to redact too much. The puppet run with errors are on {{rune-test-rsnapshot}}.\n\nIf I've cut too much away, let me know and I'll provide the full log. The lines in the file are the ones with identifiers {{qtp2111054879-103}} and {{qtp2111054879-106}}.\n\nThe puppetservers locale is as follows:\n{noformat}\n[root@puppet01 envs]# locale\nLANG=en_US.UTF-8\nLC_CTYPE=\"en_US.UTF-8\"\nLC_NUMERIC=\"en_US.UTF-8\"\nLC_TIME=en_DK.UTF-8\nLC_COLLATE=\"en_US.UTF-8\"\nLC_MONETARY=\"en_US.UTF-8\"\nLC_MESSAGES=\"en_US.UTF-8\"\nLC_PAPER=\"en_US.UTF-8\"\nLC_NAME=\"en_US.UTF-8\"\nLC_ADDRESS=\"en_US.UTF-8\"\nLC_TELEPHONE=\"en_US.UTF-8\"\nLC_MEASUREMENT=\"en_US.UTF-8\"\nLC_IDENTIFICATION=\"en_US.UTF-8\"\nLC_ALL=\n{noformat}\n", "created": "2017-02-08T04:06:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Unfortunately, that debug log doesn't contain exception traces, so the only thing it tells us is that it fails to evaluate a function call at:\n_/etc/puppetlabs/code/envs/test/manifests/site.pp:2:8_\nIs that where the {{hiera_hash}} call is?\n\n[~accountid:557058:6d9f4174-bf47-424d-a46a-6940b2255f29], would it be possible for you to also enable exception trace output? I think that is done by using {{<root level=\"trace\">}} instead of {{<root level=\"debug\">}} in the _logback.xml_.", "created": "2017-02-08T04:37:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] of course -- here's one: [^puppetserver-trace.log]\n\nYes, that's where the {{hiera_hash}} call is -- I've attached the env as [^server-1724-example.tar.bz2].", "created": "2017-02-08T04:48:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Great. Thanks! Now I think the problem is pin-pointed. It's Jruby specific, which explains why it's impossible to reproduce using the hiera or puppet CLIs. The culprit is the java class {{org.jruby.ext.psych.PsychParser}} that is bundled with the _puppet-server-release.jar_. I'll drop the ball here, to be picked up by someone on the Puppet Server team.\nPing [~accountid:557058:50693b46-2d67-4417-b1cc-9b21dadb467f].\n{code}\n2017-02-08 12:40:53,906 ERROR [qtp2111054879-106 - /puppet/v3/catalog/rune-test-rsnapshot.petardo?environment=test] [puppetserver] Puppet Evaluation Error: Error while evaluating a Function Call, \"\"\\xC3\"\" on US-ASCII at /etc/puppetlabs/code/envs/test/manifests/site.pp:2:8 on node rune-test-rsnapshot.petardo\n:in `parse'\n/opt/puppetlabs/server/apps/puppetserver/puppet-server-release.jar!/META-INF/jruby.home/lib/ruby/1.9/psych.rb:375:in `parse_stream'\n/opt/puppetlabs/server/apps/puppetserver/puppet-server-release.jar!/META-INF/jruby.home/lib/ruby/1.9/psych.rb:323:in `parse'\n/opt/puppetlabs/server/apps/puppetserver/puppet-server-release.jar!/META-INF/jruby.home/lib/ruby/1.9/psych.rb:250:in `load'\n/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend/yaml_backend.rb:19:in `lookup'\n{code}", "created": "2017-02-08T05:17:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "You're very welcome -- we appreciate your effort!", "created": "2017-02-08T05:20:00.000000"}, {"author": "557058:cedccc1b-f1a9-45c9-a3e5-6b5e96ad99f0", "body": "A small update, sorry for the delay.\n\nWell I've tried to reproduce the error using the provided test environment under puppetserver 2.7.2, but I'm not having any luck\n\nI also tried directly using the {{puppetserver ruby}} command directly, which uses the jruby version puppetserver is using. I used this yaml file and ruby script, but it doesn't produce an error\n\n{noformat}\ntest: \"\u00f8\"\n{noformat}\n{noformat}\nrequire 'psych'\nputs Psych.load(open(\"test.yml\"))\n{noformat}\n\nHowever, if I don't load the file through the {{open}} function and give it the string directly, it errors\n{noformat}\nrequire 'psych'\nputs Psych.load('test: \"\u00f8\"')\n{noformat}\n\n{{puppetserver ruby repro.rb}} outputs \n\n{{SyntaxError: repro.rb:3: invalid multibyte char (US-ASCII)}}\n\nThis seems to indicate that there might be a problem determining the character encoding when hiera loads the file, but I'm still not sure why you are having this problem but we can't reproduce it locally when running it through puppetserver. ", "created": "2017-02-23T18:21:00.000000"}, {"author": "557058:50693b46-2d67-4417-b1cc-9b21dadb467f", "body": "[~accountid:557058:cedccc1b-f1a9-45c9-a3e5-6b5e96ad99f0] Thanks for that update.  From the stack trace above, it appears that hiera is calling [YAML.load|https://github.com/puppetlabs/hiera/blob/3.3.0/lib/hiera/backend/yaml_backend.rb#L18-L19] with a string it read back from a file.  This makes me wonder if this issue is the same as one [~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] had pointed out to me, HI-519, where hiera itself was reading a file from disk without specifying UTF-8 encoding.\n\n[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d], I wonder if the reason you may not have been able to reproduce the problem when running under MRI Ruby is that you might have been running with a version of Hiera which has the fix for HI-519 rather than Hiera 3.3.0, which is what was delivered in the latest version of the puppet-agent package, 1.9.1.\n\nFrom [this comment|https://puppet.atlassian.net/browse/HI-519?focusedCommentId=409487], it appears that the fix for HI-519 would land in Hiera 3.3.1 and presumably the next Puppet Agent release?", "created": "2017-02-23T19:05:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:50693b46-2d67-4417-b1cc-9b21dadb467f], I've tested with and without the fix in HI-519. As long as UTF-8  is the default encoding (and [~accountid:557058:6d9f4174-bf47-424d-a46a-6940b2255f29] writes that it is), it makes no difference.\n{code}\n[thhal@home puppet]$ LANG=en_US.UTF-8 puppet lookup --explain --environment server_1724 eit_users\nData Binding \"hiera\"\n  Found key: \"eit_users\" value: {\n    \"test\" => {\n      \"realname\" => \"\u00f8\"\n    }\n  }\n{code}\n", "created": "2017-02-24T01:02:00.000000"}, {"author": "557058:50693b46-2d67-4417-b1cc-9b21dadb467f", "body": "Hmm, interesting.  Using {{puppetserver ruby}}, which just runs arbitrary code under JRuby like the full Puppet Server stack does, I played around with loading yaml from a file that has the latin small letter o with stroke character (U+00F8) (0xC3B8) character in it.  I had Puppet Server 2.7.2 and Puppet Agent 1.9.1 (which contains Hiera 3.3.0) installed.\n\n{noformat}\n# xxd /opt/puppetlabs/server/data/puppetserver/myfile.yaml\n0000000: 7465 7374 3a20 22c3 b822 0a              test: \"..\".\n{noformat}\n\nI used a {{File.read}} to read the file content without specifying an encoding, [like Hiera 3.3.0 does|https://github.com/puppetlabs/hiera/blob/3.3.0/lib/hiera/filecache.rb#L52].\n\nFirst, I tried with the {{LANG}} environment variable set to \"en_US.UTF-8\".  This seemed to work fine:\n\n{noformat}\n# LANG=en_US.UTF-8 /opt/puppetlabs/bin/puppetserver ruby -ryaml -e \"puts YAML.load(File.read('/opt/puppetlabs/server/data/puppetserver/myfile.yaml'))\" | xxd\n0000000: 7b22 7465 7374 223d 3e22 c3b8 227d 0a    {\"test\"=>\"..\"}.\n{noformat}\n\nIf I change the {{LANG}} environment variable value to \"en_US.ASCII\", I get an error:\n\n{noformat}\n# LANG=en_US.ASCII /opt/puppetlabs/bin/puppetserver ruby -ryaml -e \"puts YAML.load(File.read('/opt/puppetlabs/server/data/puppetserver/myfile.yaml'))\"\nEncoding::InvalidByteSequenceError: \"\"\\xC3\"\" on US-ASCII\n         parse at org/jruby/ext/psych/PsychParser.java:178\n  parse_stream at /opt/puppetlabs/server/apps/puppetserver/puppet-server-release.jar!/META-INF/jruby.home/lib/ruby/1.9/psych.rb:375\n         parse at /opt/puppetlabs/server/apps/puppetserver/puppet-server-release.jar!/META-INF/jruby.home/lib/ruby/1.9/psych.rb:323\n          load at /opt/puppetlabs/server/apps/puppetserver/puppet-server-release.jar!/META-INF/jruby.home/lib/ruby/1.9/psych.rb:250\n{noformat}\n\nThis seems to suggest that JRuby is honoring the {{LANG}} environment variable value when {{File.read}} is called with no encoding parameter, just like MRI Ruby does.\n\nThis makes me wonder whether the problem has to do with the {{LANG}} environment variable not being propagated from the shell environment into the Java environment of Puppet Server, running as a daemon.  On my test VM, which was CentOS 7, I added the following lines to the {{/opt/puppetserver/server/apps/puppetserver/cli/apps/start}} script, which is the script that is run to launch the Puppet Server daemon when {{service puppetserver start}} is performed:\n\n{noformat}\necho \"LANG is $LANG\" >/opt/puppetlabs/server/data/puppetserver/the-lang.txt\n\n${JAVA_BIN} ${JAVA_ARGS} -Djava.security.egd=/dev/urandom \\\n  -cp ${INSTALL_DIR}/puppet-server-release.jar \\\n  clojure.main -m puppetlabs.puppetserver.cli.ruby \\\n  --config \"${CONFIG}\" -- -ryaml \\\n  -e \"puts YAML.load(File.read('/opt/puppetlabs/server/data/puppetserver/myfile.yaml'))\" \\\n  >/opt/puppetlabs/server/data/puppetserver/myfile-read.txt 2>&1 &\n{noformat}\n\nThe above basically runs what the same {{puppetserver ruby}} command from above runs, but with args like the full Puppet Server daemon process uses.  I ran {{service puppetserver start}} to have the \"ruby\" command launched as a background process.  In my case, again, though, it appeared that \"en_US.UTF-8\" was being passed through to the \"ruby\" command because the file was parsed correctly:\n\n{noformat}\n# cat /opt/puppetlabs/server/data/puppetserver/myfile-read.txt | xxd\n0000000: 7b22 7465 7374 223d 3e22 c3b8 227d 0a    {\"test\"=>\"..\"}.\n# cat /opt/puppetlabs/server/data/puppetserver/the-lang.txt\nLANG is en_US.UTF-8\n{noformat}\n\nThis makes me wonder if this problem is only reproducible if the shell environment that the Puppet Server process is running under is somehow different between what I am using vs. what [~accountid:557058:6d9f4174-bf47-424d-a46a-6940b2255f29] is using.\n\nUnder what OS distribution(s) has this been reproduced?  If instrumentation similar to what I did above is done, do you see results which are the same as what I am seeing?\n\nIs the problem no longer reproducible with Puppet Server if line 52 in {{/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/filecache.rb}} is changed from the following:\n\n{code:ruby}\ndata = File.read(path)\n{code}\n\n... to ...\n\n{code:ruby}\ndata = File.read(path, :encoding => 'BOM|UTF-8')\n{code}\n\nIf so, this would suggest that the forthcoming Hiera release would fix this specific problem.  It still would be good to try to figure out why Puppet Server / JRuby doesn't seem to be processing the {{LANG}} environment variable in some environments, though.\n", "created": "2017-02-24T12:13:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "Hi [~accountid:557058:50693b46-2d67-4417-b1cc-9b21dadb467f],\n\nChanging line 52 in {{/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/filecache.rb}} as described fixed the issue. For reference, this Puppetserver is running on CentOS Linux release 7.2.1511.", "created": "2017-03-02T12:51:00.000000"}, {"author": "557058:50693b46-2d67-4417-b1cc-9b21dadb467f", "body": "Thanks for confirming, [~accountid:557058:6d9f4174-bf47-424d-a46a-6940b2255f29].  At this point, it appears that the immediate problem of the hiera yaml with the \"latin small letter o with stroke character\" not being parsed correctly should be resolved when the fix for HI-519 is delivered.  I still am unaware of a way to reproduce the behavior seen with the locale environment variable values not controlling how a file is parsed in JRuby when no character encoding is specified in code.  Without a way to progress on this further, I'm inclined to move this particular issue over to the HI project in JIRA and close as a duplicate of HI-519.  Sound okay to others here?\n\n[~accountid:557058:4e3eb0ca-7205-43fb-877c-a175a00d2181], since you had originally reported this issue, can you confirm that this addresses the issue for you?", "created": "2017-03-03T16:17:00.000000"}, {"author": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "body": "[~accountid:557058:50693b46-2d67-4417-b1cc-9b21dadb467f] you're very welcome! I work with [~accountid:557058:4e3eb0ca-7205-43fb-877c-a175a00d2181], so his issue is my issue ", "created": "2017-03-03T16:20:00.000000"}, {"author": "557058:50693b46-2d67-4417-b1cc-9b21dadb467f", "body": "Excellent, thanks again, [~accountid:557058:6d9f4174-bf47-424d-a46a-6940b2255f29].  Given that, I'm going to close this one out.", "created": "2017-03-03T16:22:00.000000"}], "components": [], "created": "2017-02-07T14:21:00.000000", "creator": "557058:4e3eb0ca-7205-43fb-877c-a175a00d2181", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@594dc22f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hym99r:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_7873936_*|*_3_*:*_1_*:*_1107732584_*|*_5_*:*_1_*:*_0_*|*_10004_*:*_3_*:*_965335634"}], "description": "This content in my hieradata/common.yaml \neit_users:\n  lisbeth:\n    realname: \"Lisbeth Ammitzb\u00f8ll Hansen\"\n    uid:      '3004'\n\nKills puppet (after I upgraded from 2.5.0 who had no issues with it) to 2.7.2 - with this error:\nError: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Resource Statement, Lookup of key 'common::system::enable_selinux' failed: DataBinding 'hiera': \"\"\\xC3\"\" on US-ASCII", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53687", "fixedVersions": [], "id": "53687", "issueType": "Bug", "key": "HI-559", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4e3eb0ca-7205-43fb-877c-a175a00d2181", "resolution": "Duplicate", "resolutionDate": "2017-03-03T16:24:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Danish UTF-8 chars kills Puppet Server in v2.7.2 (not in 2.5.0)", "timeSpent": "PT0S", "updated": "2017-03-03T16:24:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "5d009fc0df6c8f0bbd781bdf", "attachments": [], "comments": [{"author": "5d009fc0df6c8f0bbd781bdf", "body": "h4. Note..\nThis may not be a hiera issue at all, since hiera returns '%\\{REQUEST_URI\\}' when using hiera on it's own i.e {{hiera --config hiera.yaml rewrites}}. When using the hiera binary on it's own, the \"%\\{literal('%')\\}\" method also works....... Could this be an issue with puppet interpolation of data returned by hiera?", "created": "2017-02-07T00:06:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "hi [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] - any chance you could take a look? ", "created": "2017-02-07T10:22:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] - not sure if this is with Puppet 4.9.0 or not.", "created": "2017-02-07T10:27:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I've tried the examples in the description of this ticket with Hiera 3.2.2, Hiera 3.3.0, Puppet 4.8.2, Puppet 4.9.0, and current master. I always get the same (expected) result. I need a reproducable example to move forward with this.", "created": "2017-02-07T14:01:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I cam closing this as \"cannot reproduce\" as there has been no new information for a while and the reported problem cannot be reproduced. Please feel free to reopen this if there is any new information.", "created": "2017-03-09T02:02:00.000000"}], "components": [], "created": "2017-02-06T22:58:00.000000", "creator": "5d009fc0df6c8f0bbd781bdf", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@76f5b6a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzbs47:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_41037881_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_2561993943"}], "description": "Previously in hiera 3.2.2, to render the following string:\n{noformat}\n\"%{REQUEST_URI} !^/index.html$\"\n{noformat}\n\nI would have to do the following:\n{noformat}\npercent_literal: '%'\n...\nrewrites:\n  - rewrite_cond:\n    - \"%{hiera('percent_literal')}{HTTP_HOST} ^www\\\\.(.+\\\\.neto\\\\.net\\\\.au)$\"\n...\n{noformat}\nI have used *%\\{hiera('percent_literal')\\}* to escape '%' because *%\\{literal('%')\\}* does not work in hiera 3.2.2.\n\nHowever since hiera 3.3.0, the following now also no longer works:\n{noformat}\n\"%{hiera('percent_literal')}{REQUEST_URI} !^/index.html$\"\n{noformat}\n\nI have tried every workaround and example that Google could provide, without success. This problem is preventing me from building a working Apache server.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53846", "fixedVersions": [], "id": "53846", "issueType": "Bug", "key": "HI-553", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "5d009fc0df6c8f0bbd781bdf", "resolution": "Cannot Reproduce", "resolutionDate": "2017-03-09T02:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Escaping '%{...}' in string no longer works", "timeSpent": "PT0S", "updated": "2017-03-09T02:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:db3c8c5c-5825-4424-a788-64c2fa922e24", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] is this a duplicate of PUP-7169?", "created": "2017-02-03T09:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:db3c8c5c-5825-4424-a788-64c2fa922e24] yes, a duplicate - it already says it is btw, with link and all ", "created": "2017-02-03T10:12:00.000000"}], "components": [], "created": "2017-02-03T01:59:00.000000", "creator": "557058:208fc471-d54e-4e45-8455-7aaaa6d786ac", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "hiera-eyaml should work on puppet 4.9.0 (and should be part of tests)"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@d0b28cd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzbq7z:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7998613_*|*_6_*:*_1_*:*_0"}], "description": "Hello, \nwhen having hiera-eyaml installed and enabled (encrypted datastore), puppet 4.8.1 works like a charm on puppet 4.9.0 I get this error: \n\nError message: \n{noformat}\nError: Evaluation Error: Error while evaluating a Resource Statement, Lookup of key 'puppetserver::version' failed: Unrecognized value for request 'merge' parameter: 'unconstrained_deep' at /tmp/muh.pp:1:1 on node SERVER\n{noformat}", "environment": "\nPC1 - latest puppet\nPuppet: 4.9.0\nHiera: 3.3.0 \nOS: Centos7\n\n{noformat}\n[root@server]# puppet -V\n4.9.0\n[root@server]# hiera -v\n3.3.0\n{noformat}\n\nHiera config:\n{noformat}\n---\n:backends:\n  - eyaml\n  - yaml\n\n:hierarchy:\n  - \"certname/%{::clientcert}\"\n  - \"cluster/%{::cluster}\"\n  - \"role/%{::role}\"\n  - \"topic/%{::topic}\"\n  - \"location/%{::location}\"\n  - \"common\"\n\n:yaml:\n  :datadir: /opt/provision/hiera\n\n:eyaml:\n  :datadir: /opt/provision/hiera\n  :pkcs7_private_key: /opt/provision/hiera_keys/private_key.pkcs7.pem\n  :pkcs7_public_key: /opt/provision/hiera_keys/public_key.pkcs7.pem\n  :extension: 'yaml'\n\n# options are native, deep, deeper\n:merge_behavior: deeper\n:deep_merge_options:\n  :knockout_prefix: '--'\n{noformat}\n\nGems: \n{noformat}\n[root@SERVER]# /opt/puppetlabs/puppet/bin/gem list\n\n*** LOCAL GEMS ***\n\nbigdecimal (1.2.4)\ndeep_merge (1.0.1)\nfacter (3.6.0)\nfast_gettext (1.1.0)\ngettext (3.2.2)\ngettext-setup (0.10)\nhiera (3.3.0)\nhiera-eyaml (2.1.0)\nhighline (1.6.21)\nhocon (1.1.3)\nio-console (0.4.3)\njson (1.8.1)\nlocale (2.1.2)\nminitest (4.7.5)\nnet-ssh (2.9.2)\npsych (2.0.5)\npuppet (4.9.0)\nrake (10.1.0)\nrdoc (4.1.0)\nsemantic_puppet (0.1.2)\nstomp (1.3.3)\ntest-unit (2.1.9.0)\ntext (1.3.1)\ntrollop (2.1.2)\n{noformat}\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54013", "fixedVersions": [], "id": "54013", "issueType": "Bug", "key": "HI-552", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:208fc471-d54e-4e45-8455-7aaaa6d786ac", "resolution": "Duplicate", "resolutionDate": "2017-02-03T04:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera-eyaml not working with puppet 4.9.0 anymore", "timeSpent": "PT0S", "updated": "2017-02-03T10:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4b581c7f6a007049181c", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "That is probably because the master does not honor agents telling the master which environment they are in. That in turn is because that is a security problem. IIRC there is a way to get the master to allow the agent to state its environment and have it accepted, but I don't know offhand how to do that.\n\nThe problem is most likely not specific to hiera lookups since that if that was the case, then everyone would be affected.\nSince you seem to be a PE user, you can contact puppet support and they will help you get to the bottom of the problem you are seeing.\nThe other option here is to hop on to Slack and the #puppet channel to ask for interactive help from community members.\n\nThere has also been bugs in the hiera implementation - there was a nasty bug that made hiera tied to the first environment being used to compile. That is long gone, but I see you are on PE 2015.2.3 so what you are seeing could have been fixed in a later version. Support will help you figure that out and if you need to upgrade.\n", "created": "2017-01-26T12:00:00.000000"}, {"author": "623a4b581c7f6a007049181c", "body": "It's really just hiera, we've verified that by putting in notify resources with the client environment.\n\nFacter.add('client_environment') do\n  setcode do Puppet[:environment] end\nend\n\nThe output of this fact is the environment specified on the command line, but hiera lookups will use the puppet.conf environment setting.\n\nI'll see if I can open a PE ticket on this as well.", "created": "2017-01-27T14:11:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hiera simply interpolates values that were set in topscope when used with puppet. Hiera on its own does not deal with environment at all.\nAre you sure your compilation takes place in your \"environment b\" at all? It would be very surprising if hiera got a $environment that was different than the one used for the compilation. What is $environment set to (check with a\n{code}\nnotify { \"env is ${environment}\": }\n{code}\n in a manifest).\n\nThink the best is to talk to support to get help drilling down to where the problem is. There is a number of moving parts involved.\nI could naturally be wrong, but I don't think this is a hiera problem (unless, as I noted earlier, if your version of PE has a bug that has been fixed later", "created": "2017-01-27T15:28:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I am closing this as this is now a support case, and it has not been possible to reproduce this problem. If a reproducer becomes available, or if some other underlying problem is found please reopen this ticket or create one.", "created": "2017-02-03T15:07:00.000000"}], "components": ["CLI"], "created": "2017-01-26T10:15:00.000000", "creator": "623a4b581c7f6a007049181c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@46eebea5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzbixz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Jan/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_97963051_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_610756869"}], "description": "When specifying an environment from the command line, via --environment, the agent uses modules from the specified environment but continues to evaluate hiera looks with the environment specified in the configuration file.\n\nExample:\npuppet.conf --> [agent] environment=a\n\npuppet agent -t --environment b\n\nHiera will lookup with %{::environment} evaluating to a.\n\nExpected:\nHiera will lookup with %{::environment} evaluating to b.", "environment": "PE 2015.2.3", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53969", "fixedVersions": [], "id": "53969", "issueType": "Bug", "key": "HI-549", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4b581c7f6a007049181c", "resolution": "Cannot Reproduce", "resolutionDate": "2017-02-03T15:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera ignores --environment from agent, uses puppet.conf setting", "timeSpent": "PT0S", "updated": "2017-02-03T15:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "attachments": [], "comments": [], "components": [], "created": "2017-01-20T09:43:00.000000", "creator": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31bf9601"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "QA Risk Assessment Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Build, test, infrastructure tickets not risk-assessed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzbe0f:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_21580_*|*_10007_*:*_1_*:*_7886151_*|*_5_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_1865683"}], "description": "Current LDOM has some performance issue. Switching to newer LDOM", "environment": "Puppet Agent CI", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53685", "fixedVersions": [], "id": "53685", "issueType": "Task", "key": "HI-548", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "resolution": "Done", "resolutionDate": "2017-01-20T12:26:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": " Acceptance: Switch to newer Solaris 11 LDOM ", "timeSpent": "PT0S", "updated": "2017-01-23T09:37:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is unfortunate - but the old behavior was something that was not wanted by others who complained. I believe that you can now achieve removals by using a lookup_options, and an array merge with knockout, but I have not tried. It will require changes that may be unacceptable. \n\nEarlier, if you wanted to be able to set an undef value - the only way was to use something like {{$x = undef}}, and then bind nil in hiera data, or give as an undef value in a resource expression. That was deemed problematic because of its inconsistency (as you say, it is more correct now). The real culprit in this mix is the fact that puppet treats a given undef as \"use the default\" and there is nothing we can do about that.\n\nThe new behavior in pupet 4.9.0 (hiera 5/lookup) behaves as hiera 3.2.1, so the chance of this being changed (again) is close to none. I am therefore Closing this ticket as \"Won't Do\".\n\nIf your use case is one that requires some other (new) mechanism to override data with \"antimatter\" and this cannot be achieved some other way, then I think we are more willing to add that instead of changing the meaning of {{undef}}/{{nil}} in hiera data.\n", "created": "2016-12-13T17:04:00.000000"}], "components": [], "created": "2016-12-13T11:50:00.000000", "creator": "623a4a827910a200718ac35d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6da7c7a9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzaoqv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Dec/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_18869763_*|*_6_*:*_1_*:*_0"}], "description": "In older versions of Hiera you could use a nil in the backend to force the Hiera default to be selected.\n\nFor example, given the simple Hierarchy:\n{code}\n---\n:hierarchy:\n  - 'data/host'\n  - 'data/common'\n{code}\n\nAnd data/common with:\n{{my_var: 'global val'}}\n\nYou could use in data/host:\n{{my_var: ~}}\n\nAnd Hiera would return the specified default value back to Puppet. This would allow the intentional \"unsetting\" of a particular key in Hiera for a small set of hosts that otherwise received more global Hiera-based settings.\n\nThis used to work in Hiera and was usable from Puppet with {{hiera('my_key', 'a default')}}\n\nNow, Hiera (arguably more correctly) returns the found value nil, but Puppet doesn't fall back to the default, it instead raises an error and aborts the catalog compilation.\n\nThis breaks a small but important bit of flexibility in Hiera.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53696", "fixedVersions": [], "id": "53696", "issueType": "Bug", "key": "HI-547", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4a827910a200718ac35d", "resolution": "Won't Do", "resolutionDate": "2016-12-13T17:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Unable to use 'nil' in backend to force default", "timeSpent": "PT0S", "updated": "2016-12-13T17:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3cf5498f-5215-48ab-a1e4-31ce5afc57a2", "body": "I was able to do this with a tedivm-hieratic module\nhttps://forge.puppet.com/tedivm/hieratic\nBut this module do not have official support Puppet 4.\n\nmanifests/site.pp\n{code:ruby}\nhiera_include('classes')\ninclude hieratic\n{code}\n\nhieradata/nodes/puppet-db.yaml\n\n{code:hiera}\n---\nclasses:\n  - puppetdb\n  - postgresql::globals\n  - postgresql::server\n\npuppetdb::listen_address: '0.0.0.0'\npuppetdb::manage_dbserver: false\n\npostgresql::globals::manage_package_repo: true\npostgresql::globals::version: '9.4'\n\npostgresql::server::datadir: '/media/data/postgresql/9.4/main'\n\npostgresql_server_extension:\n  pg_trgm:\n    name: 'pg_trgm'\n    database: 'puppetdb'\n{code}\n", "created": "2016-11-29T00:49:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "I wouldn't suggest this should be a built in feature personally, just like hiera_include is not long for this world and lookup wont have a native version of it.  \n\nBut you can easily build this yourself and stick it on the forge, untested code but you get the idea:\n\n{code}\nnode default {\n  include classifier\n}\n\nclass classifier (\n  String $resources_key = \"resources\",\n  String $classes_key = \"classes\"\n) {\n  $resources = lookup({\"name\" => $resources_key, \"default_value\" => {}, \"merge\" => \"deep\"})\n  $classes = lookup({\"name\" => $classes_key, \"default_value\" => [], \"merge\" => \"unique\"})\n\n  $classes.include\n  \n  $resources.each |$type, $instances| {\n    $instances.each |$r_title, $r_properties| {\n      Resource[$type] {$r_title:\n        * => $r_properties\n      }\n    }\n  }\n}\n{code}\n\nNow create data like:\n\n{code}\nclasses:\n  - some_class\n\nresources:\n  notify:\n    hello:\n      message => \"hello world\"\n{code}", "created": "2016-11-29T02:01:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "In 4.x, Puppet has the building blocks available to let you do this yourself as R.I points out. I am therefore closing this as a \"won't do\".", "created": "2016-11-29T06:18:00.000000"}], "components": [], "created": "2016-11-28T23:00:00.000000", "creator": "557058:3cf5498f-5215-48ab-a1e4-31ce5afc57a2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1cca3584"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Assessment"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzae3r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Nov/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_26300001_*|*_6_*:*_1_*:*_0"}], "description": "Please implement the ability to defining resource types by means of hiera.\n\nFor example,\nI can to defining classes and resource types by means of puppet language:\n{code:ruby}\nnode 'puppet-db' {\n  class { 'puppetdb':\n    listen_address => '0.0.0.0',\n    manage_dbserver => false,\n  }\n  class { '::postgresql::globals':\n    manage_package_repo => true,\n    version => '9.4',\n  }\n  class { '::postgresql::server':\n    datadir => '/media/data/postgresql/9.4/main',\n  }\n  postgresql::server::extension { 'pg_trgm':\n    database  => 'puppetdb',\n  }\n}\n{code}\nI can to defining classes by means of hiera, but i cannot defining resource types:\n\n{code:hiera}\n---\nclasses:\n  - puppetdb\n  - postgresql::globals\n  - postgresql::server\npuppetdb::listen_address: '0.0.0.0'\npuppetdb::manage_dbserver: false\npostgresql::globals::manage_package_repo: true\npostgresql::globals::version: '9.4'\npostgresql::server::datadir: '/media/data/postgresql/9.4/main'\n{code}\n\nI have not found way to define next puppet language code by means of hiera:\n{code:ruby}\npostgresql::server::extension { 'pg_trgm':\n  database  => 'puppetdb',\n}\n{code}\n\nI found solutions that used by other users, but I do not like it:\nhttp://serverfault.com/questions/549720/hiera-include-equivalent-for-resource-types/549807\nhttps://github.com/reliantsolutions/hiera-resources", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53598", "fixedVersions": [], "id": "53598", "issueType": "New Feature", "key": "HI-546", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:3cf5498f-5215-48ab-a1e4-31ce5afc57a2", "resolution": "Won't Do", "resolutionDate": "2016-11-29T06:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Defining resource types by means of hiera", "timeSpent": "PT0S", "updated": "2016-11-29T06:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] - this sound familiar, is this an already fixed problem (my poor Jira fuu did not find the ticket I was thinking about).\n\n[~accountid:623c0afb8d8b9c0068b8ae71] - thanks for the report. We will look into this. I suspect we have already fixed this problem. Note that the problem is in Puppet, not in Hiera. If this is an already fixed problem we will close this ticket with a reference to the PUP ticket in question. If this is a new problem, we will move the ticket over to the PUP project. If so, we are going to need a reproducer and a bit more information regarding your version of puppet.", "created": "2016-11-22T10:40:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "This sounds like a duplicate of PUP-6856. See my last comment there where I mention dotted keys. So problem is fixed but not yet delivered.", "created": "2016-11-22T19:34:00.000000"}], "components": [], "created": "2016-11-22T06:55:00.000000", "creator": "623c0afb8d8b9c0068b8ae71", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1e9fe27d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hylw0v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Nov/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_45553576_*|*_6_*:*_1_*:*_0"}], "description": "If you have a hierarchy level that needs to interpolate a token that is a nested hash key but that key doesn't exist, the lookup silently ignores remaining hierarchy levels.\n\nIn the following (environment) hiera.yaml there is no 'cluster' key in the 'serverdb' fact. The result is that lookup will ignore all levels after \"ServerDB cluster\".\n\nThis is a severe issue, because a missing key could potentially break the entire infrastructure by reverting to module defaults.\n\nThe relevant bit that I could find is in https://github.com/puppetlabs/puppet/blob/master/lib/puppet/pops/lookup/sub_lookup.rb#L73-L75, after a throw while looking for the 'cluster' segment it immediately proceeds to (in our case) lookup module_data.\nThis is repeated for each class parameter and we end up with nothing but default values.\n\n{code:yaml}\n---\nversion: 4\ndatadir: data\nhierarchy:\n  - name: \"Trusted certname\"\n    backend: yaml\n    path: \"certname/%{::trusted.certname}\"\n\n  - name: \"FQDN\"\n    backend: yaml\n    path: \"fqdn/%{::facts.fqdn}\"\n\n  - name: \"ServerDB cluster\"\n    backend: yaml\n    path: \"cluster/%{::facts.serverdb.cluster}\"\n\n  - name: \"ServerDB role\"\n    backend: yaml\n    paths:\n        - \"role/%{::facts.serverdb.role}/os/%{facts.os.name}/%{facts.os.release.major}\"\n        - \"role/%{::facts.serverdb.role}/domain/%{::facts.domain}\"\n        - \"role/%{::facts.serverdb.role}\"\n\n  - name: \"ServerDB environment\"\n    backend: yaml\n    path: \"environment/%{::facts.serverdb.environment}\"\n\n  - name: \"Network\"\n    backend: yaml\n    path: \"network/%{::facts.network_16}/%{::facts.network_24}\"\n    path: \"network/%{::facts.network_16}\"\n\n  - name: \"Domain\"\n    backend: yaml\n    path: \"domain/%{::facts.domain}\"\n\n  - name: \"common\"\n    backend: yaml\n    path: \"common\"\n{code}\n\nTo be safe, the run should halt with an error, or at the very least proceed to process the remaining levels.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53967", "fixedVersions": [], "id": "53967", "issueType": "Bug", "key": "HI-545", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c0afb8d8b9c0068b8ae71", "resolution": "Duplicate", "resolutionDate": "2016-11-22T19:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Environment data lookup stops processing hierarchy if sub_lookup for interpolation token can't find segment", "timeSpent": "PT0S", "updated": "2017-05-31T07:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:db3c8c5c-5825-4424-a788-64c2fa922e24] Want your opinion on this.\n\nWhile this would be helpful it requires a new release of hiera just for the sake of adding an error message for a potentially common user mistake.\n\nSuggest holding off on doing this until (if ever) there are additional things to change in the hiera project.", "created": "2016-11-11T08:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "While at it, also check if user by mistakes tries to give a lookup.yaml file in v5 format...\n\n\"aim cork away from eye when opening bottle\"", "created": "2016-11-18T08:01:00.000000"}, {"author": "557058:8ed100be-9a13-4ed1-92d2-88ac897d6774", "body": "AFAICT, this error is being issued, but there's no documentation anywhere on how a hiera v5 hierarchy should look like.", "created": "2017-02-12T04:47:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Docs are being prepared. Meanwhile, the pre-docs (input to the documentation) can be found here: https://docs.google.com/document/d/1KzUA7ELaFnTtjZIjmmyXnkAr6m8G4zulm9VGbeC3ymg/edit#heading=h.cmpij0g6ytdu", "created": "2017-02-12T12:00:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Despite being merged into the branch for {{3.3.0}}, this code was inadvertently reverted and will be re-targeted at {{3.3.1}}", "created": "2017-02-21T21:30:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Has the revert been reversed yet?", "created": "2017-03-02T15:01:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "[~accountid:557058:c241032a-c552-4408-9a96-dcd5a643ff69], when you have a chance, could you please take a look at this? (See also https://github.com/puppetlabs/hiera/pull/390 for HI-519.)\n\n/cc [~accountid:63d40628f6e1b543161789a7]\n", "created": "2017-03-03T07:28:00.000000"}, {"author": "557058:c241032a-c552-4408-9a96-dcd5a643ff69", "body": "Here is the PR with the commit reapplied: https://github.com/puppetlabs/hiera/pull/391", "created": "2017-03-03T09:52:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "hiera#750562b puppet-agent#fb8bb30c1 passed in puppet-agent#stable in https://jenkins-master-prod-1.delivery.puppetlabs.net/view/puppet-agent%20suite%20pipelines/job/platform_puppet-agent_intn-van-sys_suite-daily-hiera-stable/25/", "created": "2017-03-05T19:08:00.000000"}], "components": [], "created": "2016-11-11T08:52:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@74e5042a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-6484"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "QA Risk Assessment Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "low risk, covered well by unit tests"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hza4b3:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Hiera now errors if it is given a configuration file `hiera.yaml` that uses the version 4 format as that is only available in environments and modules. Earlier hiera just silently ignored its content and no keys were given values. Now there is a clear error if a version 4 configuration file ends up in the wrong place."}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_910717531_*|*_1_*:*_1_*:*_11326_*|*_10007_*:*_2_*:*_11334875_*|*_3_*:*_1_*:*_343003918_*|*_10009_*:*_1_*:*_54613528_*|*_4_*:*_1_*:*_610529796_*|*_5_*:*_2_*:*_5840649026_*|*_6_*:*_2_*:*_1904934263_*|*_10006_*:*_1_*:*_600837668"}], "description": "With the introduction of the hiera.yaml version 4 format used by lookup (a format that is now also deprecated, but starting to see more use in its experimental form) it is a common mistake to try to point to an environment's hiera.yaml via the puppet setting --hiera_config. The end result is that hiera gets a v4 version config to read.\n\nWhen hiera reads a configuration there is no checking of what was actually read in terms of excess information. The configuration will look like an empty configuration to hiera and it silently just returns nothing on each request.\n\nInstead, hiera should error explicitly if given a v4 hiera.yaml to read as its configuration. The error should tell the user that a \"v4 hiera.yaml is only to be used inside an environment or a module and cannot be given to the global hiera\"", "epicLinkSummary": "Productize 'lookup'", "estimate": "PT0S", "externalId": "53897", "fixedVersions": ["HI 3.3.1"], "id": "53897", "issueType": "Improvement", "key": "HI-544", "labels": [], "originalEstimate": "PT0S", "parent": "27001", "parentSummary": "Productize 'lookup'", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Fixed", "resolutionDate": "2017-03-06T10:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera should error if it finds a v4 hiera.yaml", "timeSpent": "PT0S", "updated": "2017-03-10T07:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "cc [~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced]", "created": "2016-10-22T15:12:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "pull request raised", "created": "2016-10-22T16:07:00.000000"}], "components": [], "created": "2016-10-22T15:12:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "CI Pipeline/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "platform puppet-agent suite"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@a91d8f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz9po7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_48682168_*|*_1_*:*_1_*:*_3268683_*|*_10007_*:*_1_*:*_105486988_*|*_5_*:*_1_*:*_0"}], "description": "Example failed job: https://jenkins.puppetlabs.com/job/platform_puppet-agent_intn-van-sys_suite-daily-hiera-stable/182/SLAVE_LABEL=beaker,TEST_TARGET=redhat4-64a/console\n\nAppears to error here:\n{code}\n01:39:53 * Install puppet-agent...\n01:39:53   Fetching: http://builds.delivery.puppetlabs.net/puppet-agent/903fb84fb271a8bffb460444d6620311ec9676ec/repo_configs/rpm/pl-puppet-agent-903fb84fb271a8bffb460444d6620311ec9676ec-el-4-x86_64.repo\n01:39:53     and saving to tmp/repo_configs/el/pl-puppet-agent-903fb84fb271a8bffb460444d6620311ec9676ec-el-4-x86_64.repo\n01:39:53   localhost $ scp tmp/repo_configs/el/pl-puppet-agent-903fb84fb271a8bffb460444d6620311ec9676ec-el-4-x86_64.repo redhat4-64-1:/etc/yum.repos.d/ {:ignore => }\n01:39:53   RuntimeError: \u0001scp: /etc/yum.repos.d/: Is a directory\n01:39:53   /var/lib/jenkins/workspace/platform_puppet-agent_intn-van-sys_suite-daily-hiera-stable/SLAVE_LABEL/beaker/TEST_TARGET/redhat4-64a/hiera/acceptance/.bundle/gems/gems/net-scp-1.2.1/lib/net/scp.rb:398\n\n{code}\n\nThis started failing as soon as https://github.com/puppetlabs/ci-job-configs/pull/1913/commits/4b68060fec788cc6187dd773a051ab291da78c25 was merged, which switches testing from centos 4 to red hat \n\nthe tests have not yet passed on red hat 4\n\n*Cause*\nAfter investigation, this is because our test suites use yum to install the puppet agent package from builds.pl, and our red hat 4 hosts do not have yum (as red hat 4 did not ship with yum). The same failure will happen against any project, this isn't project specific.\n\n*Remediation*\nWe need to revert the changes specifying red hat 4 instead of centos 4\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53844", "fixedVersions": [], "id": "53844", "issueType": "CI Blocker", "key": "HI-543", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Blocker", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2016-10-24T10:56:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera puppet-agent tests failing on Red Hat 4", "timeSpent": "PT0S", "updated": "2016-10-24T10:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:38a3870a-6feb-4b94-8d1d-1b88321f4a93", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "For this kind of question it is best to use the Slack or IRC channels to get help figuring out what is wrong. If you are a PE user please contact Puppet Support.\n", "created": "2016-10-21T09:06:00.000000"}], "components": ["UX"], "created": "2016-10-20T13:19:00.000000", "creator": "557058:a58ffe31-26f1-4353-a12d-3aa84497c2b3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a1ff570"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz9p0v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Oct/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_71208409_*|*_6_*:*_1_*:*_0"}], "description": "I have a working puppet 2016.2.1 using code manager (r10k) and environments (dev, staging, prod). This is working great. I than started to utilize hiera. When setting the hiera.yaml (as shown below). I'm getting the error \"Cannot find datafile /etc/puppetlabs/code/environments*//*hieradata/common.yaml, skipping\"\n{code}\n#################################\n---\n:backends:\n  - yaml\n\n:hierarchy:\n  - \"nodes/%{::trusted.certname}\"\n  - \"%{environment}\"\n  - \"puppet_role/%{puppet_role}\"  \n  - common\n\n:yaml:\n:datadir: \"/etc/puppetlabs/code/environments/%{::environment}/hieradata\"\n#############################################################\n{code}\nI notice the double backslash which is a problem. If I replace the environment variable with an actual environment name (e.g. :datadir: \"/etc/puppetlabs/code/environments/*development*/hieradata\") and run hiera --debug i get back results. Has anyone run into this? ", "environment": "CentOS Linux release 7.2.1511 (Core)\nPuppet 4.5.3 (2016.2.1)*strong text*\nHiera 3.2.0\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53843", "fixedVersions": [], "id": "53843", "issueType": "Task", "key": "HI-541", "labels": ["3.2", "hiera"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:a58ffe31-26f1-4353-a12d-3aa84497c2b3", "resolution": "Incomplete", "resolutionDate": "2016-10-21T09:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera cannot find datadir", "timeSpent": "PT0S", "updated": "2016-10-21T09:06:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c241032a-c552-4408-9a96-dcd5a643ff69", "body": "We are going to solve this in puppet-agent instead of in hiera. See PA-620.", "created": "2016-10-17T11:04:00.000000"}], "components": [], "created": "2016-10-14T11:17:00.000000", "creator": "557058:c241032a-c552-4408-9a96-dcd5a643ff69", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "When running gem source, rubygems no longer rejects the cert and fails"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@59152e26"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz9lgn:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10452_*|*_10007_*:*_1_*:*_258281682_*|*_3_*:*_1_*:*_120042_*|*_6_*:*_1_*:*_0"}], "description": "On Windows, when adding the rubygems source to the vendored rubygems in puppet-agent, the gem command will fail with: \n\n{code}\nError fetching https://rubygems.org:\n                SSL_connect returned=1 errno=0 state=error: certificate verify failed (https://api.rubygems.org/specs.4.8.gz)>\n{code}\n\nWe can fix this by pointing the gem command helper at our packaged SSL cert file.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54011", "fixedVersions": [], "id": "54011", "issueType": "Bug", "key": "HI-540", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c241032a-c552-4408-9a96-dcd5a643ff69", "resolution": "Won't Fix", "resolutionDate": "2016-10-17T11:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Running beaker tests locally on Windows fails due to missing rubygems cert", "timeSpent": "PT0S", "updated": "2016-10-17T11:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:b7112792-99cc-45a4-87b1-084282bd9f35", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "did you opt in to using lookup in your environment? If not, then you only get lookups from the global hiera just what I think the \"explain\" shows.\nThat is: Set environment_data_provider = hiera in puppet.conf, or in Individual environments in environment.conf.", "created": "2016-10-12T08:10:00.000000"}, {"author": "70121:b7112792-99cc-45a4-87b1-084282bd9f35", "body": "Individual environments in my case, it's indeed set to 'environment_data_provider = hiera'.\n\nI have a mix of old hiera_*() and lookup() functions throughout the code.\nAs long as I don't need anything other than common.yaml or nodes/$node.yaml things work just as expected.", "created": "2016-10-12T08:24:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Wonder if there is an issue with the CLI lookup not using the expected environment. Is 'node01' in your environment in an environment that has the provider turned on?\nYou may have to set {{\\--environment}} as well to the environment you want to use. Does that make a difference?\n\n[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] - any thoughts?\n", "created": "2016-10-12T09:05:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Also, [~accountid:70121:b7112792-99cc-45a4-87b1-084282bd9f35] does it work if you do a lookup in a manifest and notice the result using puppet apply?", "created": "2016-10-12T09:05:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I think the problem is that it finds the key in the global hiera and then doesn't bother to continue the search. Global scope has top prio.", "created": "2016-10-12T09:55:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "This is what the explain output would look like if it didn't find it in the global hiera:\n{code}\nMerge strategy first\n  Data Binding \"hiera\"\n    No such key: \"virt\"\n  Data Provider \"Hiera Data Provider, version 4\"\n    ConfigurationPath \"/etc/puppetlabs/code/environments/production/hiera.yaml\"\n    Data Provider \"Virtual\"\n      Path \"/etc/puppetlabs/code/environments/production/hieradata/virtual/virtualbox.yaml\"\n        Original path: \"virtual/%{virtual}\"\n        Found key: \"virt\" value: \"virtual/virtualbox\"\n  Merged result: \"virtual/virtualbox\"\n{code}", "created": "2016-10-12T10:06:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hm, that is really a general problem when you want to migrate some environments... You need to interpolate the environment name in the global hiera in all paths to ensure that you get an empty set of files there (or naturally only such files/values that you want as overrides).\n\nWe need to remember to include this problem when writing documentation for how to migrate.", "created": "2016-10-12T10:12:00.000000"}, {"author": "70121:b7112792-99cc-45a4-87b1-084282bd9f35", "body": "Apparently using \"puppet lookup\" it makes a rather big difference whether or not the value of \"--node\" is known to Puppet.\nI've been testing mostly with just 'node01' instead of an actual hostname because it's just way faster to run 'puppet lookup' than it is to have an agent run. And typing 'node01' requires less keystrokes than an actual hostname.\n\nEven though I wasn't using anything that matches $trusted.certname it still wouldn't find very generic data in f.i. hieradata/common.yaml. Whether or not the node is known to Puppet it should still match fall-back hierarchies. Or throw an error. So I think that part is a bug.", "created": "2016-10-13T07:34:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Thomas pointed out that the explain is telling us that it finds the value using the global hierarchy in hiera. Lookup is designed that way - using priority lookup (as is the case here) if a value is found in hiera that value is used and it never continues into the env or module data providers. Thus, you must ensure that the value is not found there - see class hiera as an override over all other data - there is no merge of all hierarchical levels in the three tiers", "created": "2016-10-13T08:15:00.000000"}, {"author": "70121:b7112792-99cc-45a4-87b1-084282bd9f35", "body": "The particular data I was testing with is stored in $environment/hieradata only. It shouldn't match in global Hiera nor in modules. Nor should it quit when nothing was found in global hiera, like it did before.", "created": "2016-10-13T08:32:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "To rule out the lookup CLI, can you try with a manifest and using puppet apply?\nI would like to see what a {{notice hiera(key)}} does in your case (since that uses only your global hiera configuration).\nThen try with a {{notice lookup(key)}} which uses both the global hiera, env, and modules.\n\nIf you are certain there is nothing for the key in global hiera, and it does not continue with env, or a module - then there must be something wrong with the configuration (or that it uses an environment other than the one where you have the configuration) as it does not seem to take effect.\n\nYou may also want to hop onto Slack or IRC and get interactive help from the community as that may help you resolve the issues faster.", "created": "2016-10-13T09:34:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:70121:b7112792-99cc-45a4-87b1-084282bd9f35], the behavior above would be exactly what you get if you have a global hiera.yaml that uses interpolation of %\\{environmentpath\\} to find data in the environment. Are you 100% sure that isn't the case? I'm certain that the environment data provider is never consulted. If it was, that would have shown in the explain output as \"Data Provider \"Hiera Data Provider, version 4\". That's regardless of if it finds the key or not. But it doesn't go beyond the global \"Hiera\" at the top. The key is found there.", "created": "2016-10-13T11:12:00.000000"}], "components": [], "created": "2016-10-12T05:25:00.000000", "creator": "70121:b7112792-99cc-45a4-87b1-084282bd9f35", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7385d39d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz9ht3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Oct/16"}], "description": "Please consider the snippets below.\n\ncat /etc/puppetlabs/code/environments/production/hiera.yaml\n{code:java}\n---\nversion: 4\ndatadir: hieradata\n\nhierarchy:\n  # Just some of the varieties I've tested:\n  - name: \"Virtual\"\n    backend: yaml\n    paths:\n      - \"virtual/%{facts.virtual}\"\n      - \"%{facts.virtual}\"\n\n  - name: \"Virtual, 2\"\n    backend: yaml\n    path: \"virtual/%{facts.virtual}\"\n\n  - name: 'Virtual, 3'\n    backend: yaml\n    path: \"virtual/%{::virtual}\"\n\n  - name: 'Virtual, 4'\n    backend: yaml\n    path: \"virtual/%{::facts.virtual}\"\n\n  - name: \"virtual/%{facts.virtual}\"\n    backend: yaml\n\n  - name: \"virtual/%{::facts.virtual}\"\n    backend: yaml\n\n  - name: \"virtual/%{::virtual}\"\n    backend: yaml\n\n  - name: \"%{facts.virtual}\"\n    backend: yaml\n\n  - name: \"%{::virtual}\"\n    backend: yaml\n\n  - name: 'Nodes'\n    backend: yaml\n    path: \"nodes/%{::trusted.certname}\"\n\n  - name: 'common'\n    backend: yaml\n{code}\n\ncat /etc/puppetlabs/code/environments/production/hieradata/virtual/virtualbox.yaml\n{code:java}\n---\nvirt: 'virtual/virtualbox'\n{code}\n\ncat /etc/puppetlabs/code/environments/production/hieradata/virtualbox.yaml\n{code:java}\n---\nvirt: 'virtualbox'\n{code}\n\ncat /etc/puppetlabs/code/environments/production/hieradata/nodes/node01.yaml\n{code:java}\n---\nvirt: 'nodes/node01'\n{code}\n\ncat /etc/puppetlabs/code/environments/production/hieradata/common.yaml\n{code:java}\n---\nvirt: 'common'\n{code}\n\ncat ~/facts.yaml\n{code:java}\n---\nenvironment: 'production'\nfqdn: 'node01'\nvirtual: 'virtualbox'\ntimezone: 'PDT'\n{code}\n\n$ facter virtual\n{code:java}\nvirtualbox\n{code}\n\nNo matter which variety I've tried to use for virtual - or any other fact for that matter - any hierarchy other than nodes or common is ignored. My agents always end up with the data in nodes/%{::trusted.certname}.yaml or common.yaml\n\nWhen using 'puppet lookup' it gets even more weird: only common.yaml is found.\n\n{code:java}\n$ puppet lookup virt --explain --node node01 --facts ~/facts.yaml --debug\n\nDebug: Evicting cache entry for environment 'production'\nDebug: Caching environment 'production' (ttl = 0 sec)\nDebug: Performing a hiera indirector lookup of lookup_options with options {:variables=>Scope(Class[main]), :merge=>#<Puppet::Pops::HashMergeStrategy:0x00000004d5ef40 @options_t=#<Puppet::Pops::Types::PStructType:0x00000004d5b7a0 @elements=[#<Puppet::Pops::Types::PStructElement:0x00000004d5b7c8 @key_type=#<Puppet::Pops::Types::POptionalType:0x00000004d5b7f0 @type=#<Puppet::Pops::Types::PStringType:0x00000004d5b840 @size_type=nil, @values=[\"strategy\"]>>, @value_type=#<Puppet::Pops::Types::POptionalType:0x00000004d5b958 @type=#<Puppet::Pops::Types::PPatternType:0x00000004d5b9a8 @patterns=[#<Puppet::Pops::Types::PRegexpType:0x00000004d5bac0 @pattern=\"hash\", @regexp=/hash/>]>>>]>, @options={}>}\nDebug: hiera(): Hiera YAML backend starting\nDebug: hiera(): Looking up lookup_options in YAML backend\nDebug: hiera(): Looking for data source common\nDebug: Performing a hiera indirector lookup of virt with options {:variables=>Scope(Class[main]), :merge=>#<Puppet::Pops::FirstFoundStrategy:0x000000029790d0 @options_t=#<Puppet::Pops::Types::PStructType:0x000000029750c0 @elements=[#<Puppet::Pops::Types::PStructElement:0x000000029750e8 @key_type=#<Puppet::Pops::Types::POptionalType:0x00000002975110 @type=#<Puppet::Pops::Types::PStringType:0x00000002975188 @size_type=nil, @values=[\"strategy\"]>>, @value_type=#<Puppet::Pops::Types::POptionalType:0x000000029752f0 @type=#<Puppet::Pops::Types::PPatternType:0x000000029753e0 @patterns=[#<Puppet::Pops::Types::PRegexpType:0x000000029755c0 @pattern=\"first\", @regexp=/first/>]>>>]>, @options={}>}\nDebug: hiera(): Looking up virt in YAML backend\nDebug: hiera(): Looking for data source common\nDebug: hiera(): Found virt in common\nData Binding \"hiera\"\n  Found key: \"virt\" value: \"common\"\n{code}\n\nNo errors, log entries, ... whatsoever to be found.\nAny help trying to debug this would be greatly appreciated.", "environment": "Ubuntu 16.04\nPuppetserver 2.6.0\nPuppet-agent 1.6.2", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53870", "fixedVersions": [], "id": "53870", "issueType": "Bug", "key": "HI-539", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:b7112792-99cc-45a4-87b1-084282bd9f35", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hierarchies are being ignored", "timeSpent": "PT0S", "updated": "2016-10-13T11:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c241032a-c552-4408-9a96-dcd5a643ff69", "body": "Moving to Beaker 3.1.0 will require bumping Ruby to 2.2.5 in ci-job-configs.", "created": "2016-10-11T10:31:00.000000"}], "components": [], "created": "2016-10-10T16:42:00.000000", "creator": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@24a133a8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-462"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz9dov:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Oct/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_1161656322_*|*_1_*:*_1_*:*_8405_*|*_10007_*:*_2_*:*_323534418_*|*_3_*:*_2_*:*_2541018_*|*_5_*:*_2_*:*_3137421500_*|*_6_*:*_2_*:*_99644139_*|*_10004_*:*_1_*:*_263403111"}], "description": "Beaker 3.1.0 is required to run tests on MacOS sierra. With the intent to start testing packages we need to bump the beaker version in hiera", "epicLinkSummary": "Add macOS Sierra (10.12) as a supported agent platform", "estimate": "PT0S", "externalId": "53842", "fixedVersions": ["HI 3.2.2"], "id": "53842", "issueType": "Task", "key": "HI-538", "labels": [], "originalEstimate": "PT0S", "parent": "57799", "parentSummary": "Add macOS Sierra (10.12) as a supported agent platform", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "resolution": "Fixed", "resolutionDate": "2016-11-15T19:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update beaker to 3.1.0 for MacOS Sierra testing", "timeSpent": "PT0S", "updated": "2016-12-07T09:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is a bit problematic since an empty string is the same as a nil/undef value in the API.", "created": "2016-09-11T08:34:00.000000"}, {"author": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "body": "After spending a while looking at the code I believe the best solution is to check if new_answer is nil in `lookup` and treat that as not found.  From what I can tell an actual nil value is unsupported in hiera so I don't believe it will cause any issues.  [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Does that seem like a reasonable solution to you?", "created": "2016-09-11T09:29:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "An actual {{nil}} value is supported in automatic data binding with the meaning set {{undef}}. In many versions of puppet that has not been working, but it does now.\nThe handle the case in question (this ticket), the source string must be examined to see if its content is a single interpolation via alias, and if so treat the resulting string as \"not found\".\n\nThe handling of defaults for data binding allows an undef value to be looked up and set, if, and only if there is no default value expression.\n\nI think that changing the current behavior is a breaking change as some may rely on the existing behaviour of the hiera functions and return of nil. I am therefore reluctant to make this change. What we plan is instead a much better mechanism for aliasing (and other mappings/transformation) for \"lookup feature\" (the new API). With the new API it is possible to do aliasing and decide if a not-found is a not-found of the aliased key, or something else.\n", "created": "2016-09-11T10:19:00.000000"}, {"author": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "body": "Could you explain a bit more what you mean by this?\n\nbq. An actual nil value is supported in automatic data binding with the meaning set undef. In many versions of puppet that has not been working, but it does now.\n\nI don't believe that my proposed change will affect this - if a default value is not set a `nil` will continue to be returned.  This will only have an effect if the default value is set.", "created": "2016-09-11T10:33:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Earlier it was impossible to give an {{undef}} to a parameter via data binding in this situation:\n{code:puppet}\nclass example($x) { }\n{code}\ninclude example\nIf you set the value to some kind of {{nil}} in the data (depends on the file format/backend) the result was that puppet complained about a missing value since there is no default expression.\nIf the key {{example::x}} is missing the result is \"missing value\" error. This now works in puppet and the value is set to {{undef}}. If however the example is written like this:\n{code:puppet}\nclass example($x=42) { }\ninclude example\n{code}\nHere the lookup of {{undef}} will select the default value (42).\n\nIn older versions of puppet, the only way to get an actual undef via data binding was to set it as the default value.", "created": "2016-09-12T01:41:00.000000"}, {"author": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "body": "I understand.  As an aside that actually seems very useful for us and I am glad to know it is an option.  Another fix I considered would be to pass the default value from lookup down into the recursive lookup.  I believe that would avoid breaking automatic parameter lookup but it would require changing a number of function signatures.  I know in the past that was a concern in hiera.  Do you think that is a workable solution?", "created": "2016-09-12T10:30:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I don't think changing the signature is an option as the API is not well specified and there are many implementations of hiera backends that could potentially break, or that would do the wrong thing.\n\nThe only real working solution I can think of is to add the aliasing capability to  \"lookup_options\". Such an option would in contrast to the {{alias}} interpolation function be a real alias in that it can treat a lookup of one key as a true lookup of another key. That in turn enables preserving the data type and would make aliasing of hashes and arrays possible as well as solving this particular use case (I think). With this feature, a lookup for say \"x\" aliased to \"y\" would simply never search for \"x\" among the data and instead return the \"y\". The implementation would need to handle chains of aliases, as well as circular aliases.\n\nThe problem with trying to fix this for the interpolation function and interpreting certain kinds of interpolation results as something special (not found vs. empty string) would result in something that is hard to maintain as it relies on too many special cases.", "created": "2016-09-13T07:49:00.000000"}], "components": [], "created": "2016-09-10T15:53:00.000000", "creator": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@726bf0d7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz8rsn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Sep/16"}], "description": "When doing a hiera lookup that points to an alias that doesn't exist, one would expect to get the default value passed into the lookup.  Currently, that does not happen.  Instead nil is always returned.  In the case of puppet this raises an error that the hiera lookup failed.  I have a PR incoming to fix this - just wanted to get a ticket open to reference in the commit.  An example follows.\n\nHiera data:\n{code}\nvalue1: \"%{alias('value2')}\"\n{code}\n\nRunning:\n{code}\n$ hiera value1 defaultanswer\nnil\n{code}\n\nExpected:\n{code}\n$ hiera value1 defaultanswer\ndefaultanswer\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53808", "fixedVersions": [], "id": "53808", "issueType": "Bug", "key": "HI-537", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Default value doesn't work correctly with an alias", "timeSpent": "PT0S", "updated": "2017-08-22T08:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "If you are on a recent version of puppet, please use the {{lookup}} CLI utility instead of {{hiera}}. The problem with the hiera command is that it is in hiera, and is supposed to work with multiple puppet versions, but does not do it right for some of them.\n\nThere are in general several issues with the {{hiera}} CLI command.", "created": "2016-08-29T06:48:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as a \"Won't fix\" since the hiera CLI is broken in multiple ways, and is slated for removal.", "created": "2016-09-08T07:46:00.000000"}], "components": [], "created": "2016-08-29T06:15:00.000000", "creator": "557058:45875d4c-1fcb-422e-b466-b87a6a3c8548", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@68b417e0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz8jfz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_869448818_*|*_6_*:*_1_*:*_0"}], "description": "Hi \n\nHiera's CLI is giving me \n{code}\n\"Cannot find datafile /etc/puppetlabs/code/environments//hieradata/common.yaml, skipping\". environment value is missing.\n{code}\n\nThat's because the default value is {{%\\{environment\\}}} instead of {{%\\{::environment\\}}}\n\nSee here:\n{code}\n/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/util.rb:44:      File.join(code_dir, 'environments' , '%{environment}' , 'hieradata')\n{code}\n\nBest regards,", "environment": "CentOS 7 up to date with puppetlabs 7/PC1 repository", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53895", "fixedVersions": [], "id": "53895", "issueType": "Bug", "key": "HI-535", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:45875d4c-1fcb-422e-b466-b87a6a3c8548", "resolution": "Won't Do", "resolutionDate": "2016-09-08T07:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Wrong default datadir value", "timeSpent": "PT0S", "updated": "2017-03-01T17:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "attachments": [], "comments": [{"author": "557058:c241032a-c552-4408-9a96-dcd5a643ff69", "body": "We have decided we don't need to do this work given the new preference for Hiera 5 in Puppet.", "created": "2017-07-19T11:44:00.000000"}], "components": [], "created": "2016-08-22T13:58:00.000000", "creator": "557058:ee5c1409-5f9d-4dd8-9c22-21070ef94edb", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@693d3fa6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PA-1273"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hym38n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Apr/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_27423_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_8544357699_*|*_10006_*:*_1_*:*_24351_*|*_10005_*:*_1_*:*_20045948509"}], "description": "Integrate the gettext-setup gem, mark translatable strings, and generate a message catalog.\n", "epicLinkSummary": "Translate Puppet Agent components - Phase 3 C++", "estimate": "PT0S", "externalId": "53869", "fixedVersions": [], "id": "53869", "issueType": "Improvement", "key": "HI-534", "labels": ["i18n"], "originalEstimate": "PT0S", "parent": "58296", "parentSummary": "Translate Puppet Agent components - Phase 3 C++", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:ee5c1409-5f9d-4dd8-9c22-21070ef94edb", "resolution": "Won't Do", "resolutionDate": "2017-07-19T11:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Generate msg catalogs, review and mark translatable strings", "timeSpent": "PT0S", "updated": "2017-07-19T11:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hiera 1.3.4 is old (> 2 years). Much older than OSx 10.11.6. There are later releases of hiera,\n\nThere was not much information to go in in this ticket. I am going to close it as incomplete. Please try with a newer version of hiera.", "created": "2016-08-22T16:34:00.000000"}], "components": [], "created": "2016-08-22T12:34:00.000000", "creator": "623e7b5d50bb2b0070b7eedd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7e5a0129"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz8e07:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14446997_*|*_6_*:*_1_*:*_0"}], "description": "Using puppet 3.8.7 with hiera 1.3.4 and deploying it using munki. Hiera v 1.3.4 is not compatible with OS X 10.11.6.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53894", "fixedVersions": ["HI 1.3.4"], "id": "53894", "issueType": "Bug", "key": "HI-533", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623e7b5d50bb2b0070b7eedd", "resolution": "Incomplete", "resolutionDate": "2016-08-22T16:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.4 pkg not compatible with OS X 10.11.6", "timeSpent": "PT0S", "updated": "2017-03-10T10:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There is no support for nested calls in hiera. The functions are top level only. What led you to believe that it should work that way?\nClosing this as it works as expected. The interpolation functions in hiera have very limited functionality.\n\nWe do not expect to add this as a new feature. There is instead work in the progress to make transformations like this far more pleasant and easy to achieve when we complete the \"lookup\" features that will replace the existing hiera functions.", "created": "2016-08-11T06:17:00.000000"}, {"author": "557058:cb7f97e8-590d-4a68-9938-71789090b50e", "body": "I assumed it would function this way as it is possible to make such calls from within Puppet manifests. Are there any pages on the lookup features?", "created": "2016-08-12T03:03:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Lookup is described in the puppet online documentation. The feature \"lookup\" a.k.a \"Data in Modules\" is currently marked as experimental, and we are now working on finalizing the feature and making it a regular feature. There are a couple of things we want to adjust - see PUP-6484.\n\nIIRC, the new implementation does not support nested interpolation calls - but we are working on a functional layer that would allow such things.", "created": "2016-08-12T04:14:00.000000"}], "components": [], "created": "2016-08-11T04:26:00.000000", "creator": "557058:cb7f97e8-590d-4a68-9938-71789090b50e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@36190b1d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz85gv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6628954_*|*_6_*:*_1_*:*_0"}], "description": "When calling Hiera functions from within YAML, it is not possible to nest them. Example below.\n\n{quote}\nsome::value: \"%\\{hiera(hiera('some::lookup'))}-look-at-me\"\nsome::lookup: 'some::key'\nsome::key: 'this-is-some-value'\n{quote}\n\nCalling this from a manifest via:\n{quote}\n$_value = hiera('some::value')\nnotify { \"_value is ${_value}\": }\n{quote}\n\nResults in the following:\n{quote}\nNotice: /Stage[main]/Main/Node[FQDN]/Notify[_value is -look-at-me]/message: defined 'message' as '_value is -look-at-me'\n{quote}", "environment": "RHEL 6.5", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53642", "fixedVersions": [], "id": "53642", "issueType": "Bug", "key": "HI-532", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:cb7f97e8-590d-4a68-9938-71789090b50e", "resolution": "Won't Do", "resolutionDate": "2016-08-11T06:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Nested Hiera calls in interpolation in hiera data does not work", "timeSpent": "PT0S", "updated": "2016-08-12T04:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623e78348d8b9c0068b9f406", "body": "As suggested by [~accountid:557058:aa6d1453-50f4-471b-87b9-51c229b89da5] on IRC, this seems to be a hiera-eyaml issue instead.\nHere's the associated issue [https://github.com/TomPoulton/hiera-eyaml/issues/205]", "created": "2016-08-10T03:25:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as incomplete - it is an Eyaml issue.", "created": "2016-08-10T06:50:00.000000"}], "components": [], "created": "2016-08-10T03:04:00.000000", "creator": "623e78348d8b9c0068b9f406", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@745ef8a5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz84b3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13514482_*|*_6_*:*_1_*:*_0"}], "description": "hiera_array() in conjunction with eyaml will yield an array containing the decrypted element, but also a spurious element containing the eyaml literal.\n\nConsider the following hiera file:\n\n\n{code:yaml}\n---\narray_w_encrypted_element:\n  - a\n  - b\n  - ENC[GPG,hQIOA3fxw9YrYu65EAf/RpCJIsF7b4huIxBBn0tf8BtozuBjNJQ0sBjamJDOjBY4HrhSn7h2pQLBZgRf70JDhkxFNBtrLd2qS0EfPv57RCVlnh4mWKS/DfVJqzQSKLszmKGpSavc+muxeFU0QkpZWIWFZZQ6EG3VJ7HMmrfSLe6DONaQkl58Ie1h9yS7TDK/wGsArEPkQ2BLw/989RRUX0r6qcjSiZ9ooUDufipCO1F4ceBV/CRn7/DoSkF0T0qKeM45jQ/WprYTfO8rFkG9Yy8HSP9pdwa0eSui60fTRbjt47I53ys3+XQXrG2VCF2YXqCMWl8XcgDolDdNkxEDVa6a6O5y1kHF9w6+V+nQcAgAii0qAhL0vWY9fmHPDmySXr5tpDjjSkWc64F1OC8nWD4ifz5rEEU1pEQUVDYTJ4xenvndkgA4EKOQauo4lBQh9MRPAoG+tc78OQNqidW0SHBgm/Cdf/g4DLonZcs1sPj8ZbTvnALsSoiRfphXAzrBfTVJfAvXuPZ1dALNRAlXd1lEneRE7r9yXgGGxD4pfXLnLPfaPGvhNmNXQ7+w0ym4cQIqDUw2PcPV5Z+uJ1+6gO5G9E/8JgW7tkY2VIBZBO+ptMP3FAYGj9HM5UNPK7gONkUwgBm+Zw27lyZ4vqVm+vxzD8LtOqqPmRiwLD5y8dSRR0IxkcAYgNp2wP+GgrObrNI8ASx0OYRjH9tOOul8QUtJYlskY4C1oQI4YhBlOXiG3PdkwFoKSEdoLcX2i3kWC5MKL5dm/yi12tUZhGTd]\n{code}\n\nAnd the following manifest:\n\n{code:puppet}\nclass manifests::eyaml::woes {\n  $_data = hiera_array('array_w_encrypted_element')\n  file { '/tmp/foo.json':\n    ensure  => present,\n    content => join($_data,\" \"),\n  }\n}\n{code}\n\nThis yields the following file:\n\n{code:other}\na b c ENC[GPG,hQIOA3fxw9YrYu65EAf/RpCJIsF7b4huIxBBn0tf8BtozuBjNJQ0sBjamJDOjBY4HrhSn7h2pQLBZgRf70JDhkxFNBtrLd2qS0EfPv57RCVlnh4mWKS/DfVJqzQSKLszmKGpSavc+muxeFU0QkpZWIWFZZQ6EG3VJ7HMmrfSLe6DONaQkl58Ie1h9yS7TDK/wGsArEPkQ2BLw/989RRUX0r6qcjSiZ9ooUDufipCO1F4ceBV/CRn7/DoSkF0T0qKeM45jQ/WprYTfO8rFkG9Yy8HSP9pdwa0eSui60fTRbjt47I53ys3+XQXrG2VCF2YXqCMWl8XcgDolDdNkxEDVa6a6O5y1kHF9w6+V+nQcAgAii0qAhL0vWY9fmHPDmySXr5tpDjjSkWc64F1OC8nWD4ifz5rEEU1pEQUVDYTJ4xenvndkgA4EKOQauo4lBQh9MRPAoG+tc78OQNqidW0SHBgm/Cdf/g4DLonZcs1sPj8ZbTvnALsSoiRfphXAzrBfTVJfAvXuPZ1dALNRAlXd1lEneRE7r9yXgGGxD4pfXLnLPfaPGvhNmNXQ7+w0ym4cQIqDUw2PcPV5Z+uJ1+6gO5G9E/8JgW7tkY2VIBZBO+ptMP3FAYGj9HM5UNPK7gONkUwgBm+Zw27lyZ4vqVm+vxzD8LtOqqPmRiwLD5y8dSRR0IxkcAYgNp2wP+GgrObrNI8ASx0OYRjH9tOOul8QUtJYlskY4C1oQI4YhBlOXiG3PdkwFoKSEdoLcX2i3kWC5MKL5dm/yi12tUZhGTd]\n{code}\n\nThe same applies to hiera_hash() when one of the keys contains a nested array.", "environment": "Platform: Linux CentOS 7.2.1511 \nArchitecture: x86_64\nRPM: puppetserver-2.4.0-1.el7.noarch\n\n$ puppetserver gem list\nWarning: The following options to parse-opts are unrecognized: :flag\n\n*** LOCAL GEMS ***\n\ncollectd-dsl (0.3.5)\nhiera-eyaml (2.1.0)\nhiera-eyaml-gpg (0.6)\nhighline (1.6.21)\njar-dependencies (0.1.13)\njruby-openssl (0.9.7 java)\njson (1.8.0 java)\nrake (10.1.0)\nrdoc (4.1.2)\nruby_gpg (0.3.2)\ntrollop (2.1.2)\nuuidtools (2.1.5)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53691", "fixedVersions": [], "id": "53691", "issueType": "Bug", "key": "HI-531", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623e78348d8b9c0068b9f406", "resolution": "Incomplete", "resolutionDate": "2016-08-10T06:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Eyaml with hiera_array() creates literal ENC[...] array element along with decrypted string", "timeSpent": "PT0S", "updated": "2016-08-10T06:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [{"attacher": "6243882a247a4b00691c16d2", "created": "2016-08-09T11:37:00.000000", "name": "backend.rb.patch", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14183"}], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:6243882a247a4b00691c16d2] A PR against the hiera project at github would be appreciated.\nIt is unclear to me why hierarchy sources matching the pattern in question are illegal and ignored in the first place. If you happen to know why that is being done it would also help.", "created": "2016-08-17T15:12:00.000000"}, {"author": "6243882a247a4b00691c16d2", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] I have created [https://github.com/puppetlabs/hiera/pull/360 PR360] \n\nAs to why, I can see why in the current code the restriction is required the method \"datafile_in(datadir, source, extension)\" returns the full path and name of the file (if it exists) by adding together a \"base directory\" (datadir), the \"hierarchy source\" (source) and extension. \nSince the source is the middle part of a full file name / path it can not have those pattens. e.g.\ndatadir = \" /etc/puppetlabs/code/environments/production/hieradata/\"\nsource = \"os/${::operatingsystem}\"\nextension = \".json\"\nmaking the full file path \"/etc/hieradata/os/RedHat.json\"\n\nIt was my original understanding that if a \"source\" started with a \"/\" that \"datadir\" would be skipped, but that is not so.\n\nlooking at this now i wonder what would happen if source was something like \"../../${::operatingsystem}\"\n\n\nI guess the method \"datafile_in\" could be modified to check if \"source\" started with a \"/\" and not join basedir in if so. \n", "created": "2016-08-18T04:19:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:6243882a247a4b00691c16d2] Thanks. I asked about the rules because there is no specification that says why it is doing what it is doing, and there is also no specification of what should happen when using relative paths. For instance, it could be that the skipping is a feature - such that if you have an undefined variable that is used to interpolate a path, and it therefore ends up starting with a slash is actually a feature, and those entries are to be skipped by design. \n\nPing [~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd] - any input here?\n\nWhile logging warnings is fine, making it a hard error may in practice be disruptive.", "created": "2016-08-18T07:24:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "missing sources is normal yes - you might have 100 hosts and only 10 have certname specific files, this should not produce errors/warnings it will be very noisy.\n\nbadly formed ones should produce errors, though the feedback cycle available to hiera is limited but yeah I think if there's actually a set documented known good thing it should error when a known not good thing is given to it.  I suspect the rules arent defined though so ultimately this might just end up as design feedback for lookup rather than fixes to hiera given the place in hieras life cycle.", "created": "2016-08-18T08:02:00.000000"}, {"author": "6243882a247a4b00691c16d2", "body": "resolved by [Pull #360|https://github.com/puppetlabs/hiera/pull/360]", "created": "2016-08-23T16:16:00.000000"}, {"author": "6243882a247a4b00691c16d2", "body": "Resolved in https://github.com/puppetlabs/hiera/pull/360", "created": "2016-08-23T16:18:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:6243882a247a4b00691c16d2] Thanks for the contribution. I did some housekeeping on the ticket. Once something has been merged, the next state is \"Ready for CI\", which means that there needs to be a complete acceptance test run with the version in question before the ticket progresses to \"Ready for Test\" - this is manual testing and a review that the test coverage is suitable (in this case it should be quick). Finally, the ticket goes to Resolved, and it is finally closed/done when the release goes out (In this case the next Hiera release).", "created": "2016-08-23T17:43:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Verified it works with {{puppet-agent}} at {{SHA=a3ddefc5}}\n{code:title=hiera.yaml file}\n[root@wopshcnouwefxof ~]# cat /etc/puppetlabs/code/hiera.yaml\n---\n    :backends:\n      - \"yaml\"\n    :logger: \"console\"\n    :hierarchy:\n      - \"%{fqdn}\"\n      - \"%{environment}\"\n      - \"/bad_hiera_source\"\n      - \"//bad_hiera_source\"\n      - \"bad_hiera_source/\"\n      - \"global\"\n\n    :yaml:\n      :datadir: \"/etc/puppetlabs/code/hieradata\"\n  [root@wopshcnouwefxof ~]#\n{code}\n\n{code:title=Seeing warning messages in debug logs}\n[root@wopshcnouwefxof ~]puppet apply -e \"notice(hiera('http_port'))\" --debug | grep \"Ignoring bad definition\"\nDebug: hiera(): Ignoring bad definition in :hierarchy: '/bad_hiera_source'\nDebug: hiera(): Ignoring bad definition in :hierarchy: '//bad_hiera_source'\nDebug: hiera(): Ignoring bad definition in :hierarchy: 'bad_hiera_source/'\n[root@wopshcnouwefxof ~]#\n{code}", "created": "2016-08-31T12:56:00.000000"}], "components": ["CLI"], "created": "2016-08-09T11:39:00.000000", "creator": "6243882a247a4b00691c16d2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@574c8c14"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymy2v:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_672187809_*|*_1_*:*_1_*:*_704032209_*|*_5_*:*_2_*:*_5428372186_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2111143_*|*_10004_*:*_2_*:*_522321035"}], "description": "Hiera will silently drop malformed hierarchy sources (Those matching /(^\\/|\\/\\/|\\/$)/).\nThere should be some notification when this happens. \n\ne.g. see attached patch for an example of this. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53641", "fixedVersions": ["HI 3.2.2"], "id": "53641", "issueType": "Improvement", "key": "HI-530", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "6243882a247a4b00691c16d2", "resolution": "Fixed", "resolutionDate": "2016-08-31T12:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera silently drops malformed hierarchy sources ", "timeSpent": "PT0S", "updated": "2016-11-02T07:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:fbd7d726-b72b-42a6-ae12-f3625c180b32", "body": "Of course ... the last possibility I hadn't check seems to be a solution for my very problem:\n\n{code:title=/home/puppet/common.yaml}\n---\ncontent: \"%%{::}{secret} %%{::}{secret2}\"\n{code}\n\n{code:title=hiera_cli}\n$ /opt/puppetlabs/bin/hiera --config /etc/hiera.yaml content\n%{secret} %{secret2}\n{code}\n\nworks like a charm.\n\nQuestion now:  is this form just _a workaround_ or the recommended way of doing this ?\n", "created": "2016-08-03T14:27:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "See HI-501 (which HI-513 is a dup of) for the longer explanation why this is still a problem. Short answer, use {{'%%{::\\}'}}.\n\nClosing this as a duplicate of HI-501.", "created": "2016-08-03T15:35:00.000000"}, {"author": "557058:fbd7d726-b72b-42a6-ae12-f3625c180b32", "body": "Ok but don't you think this could be a good idea to _temporarily_ reference HI-501 in the [official documentation of the hiera's literal function|https://docs.puppet.com/hiera/latest/variables.html#the-literal-lookup-function] until this problem is solved ?", "created": "2016-08-04T00:17:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:fbd7d726-b72b-42a6-ae12-f3625c180b32] Yes, it would help if that was pointed out. Ping [~accountid:557058:8f1e0495-1d4a-4123-bbad-727b7f49f370].\nAlso note that the new implementation for \"lookup\" does not have the same problems that the hiera implementation has.", "created": "2016-08-04T03:07:00.000000"}], "components": ["Community"], "created": "2016-08-03T14:13:00.000000", "creator": "557058:fbd7d726-b72b-42a6-ae12-f3625c180b32", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@78a09862"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz7ylr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5135370_*|*_6_*:*_1_*:*_0"}], "description": "Like described in [HI-501|https://puppet.atlassian.net/browse/HI-501] or [HI-513|https://puppet.atlassian.net/browse/HI-513], we just can't resolve hiera data that is using multiple {{literal('%')}}.\n\nExact same issue that in [HI-513|https://puppet.atlassian.net/browse/HI-513]:\n\n{code:title=/etc/hiera.yaml}\n---\n:backends:\n  - yaml\n\n:hierarchy:\n  - common\n\n:yaml:\n  :datadir: /home/puppet\n{code}\n\n{code:title=/home/puppet/common.yaml}\n---\ncontent: \"%{literal('%')}{secret} %{literal('%')}{secret2}\"\n{code}\n\n{code:title=hiera_cli}\n$ /opt/puppetlabs/bin/hiera --config /etc/hiera.yaml content\n/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/recursive_guard.rb:13:in `check': Lookup recursion detected in [literal('%')] (Hiera::InterpolationLoop)\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:68:in `do_interpolation'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:47:in `block in interpolate'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:46:in `gsub'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:46:in `interpolate'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:142:in `parse_string'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:153:in `parse_answer'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend/yaml_backend.rb:37:in `block in lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:120:in `block in datasourcefiles'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:92:in `block in datasources'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:90:in `map'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:90:in `datasources'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:115:in `datasourcefiles'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend/yaml_backend.rb:17:in `lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:270:in `block (2 levels) in lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:268:in `catch'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:268:in `block in lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:263:in `each'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:263:in `lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera.rb:116:in `lookup'\n        from /opt/puppetlabs/bin/hiera:246:in `<main>'\n{code}\n\nI obtain the exact same error as in the quoted ticket with the latest available version of hiera.\n\nI can see that [HI-513|https://puppet.atlassian.net/browse/HI-513] as been closed but can't figure out how to solve my problem.\n\nThis is currently a problem for me as I'm curently retrieving something like\n\n{code}\n%{REMOTE_USER}\n{code}\n\nfor my Apache configuration stored in Hiera.\n\nIf there is a quick workaround, please let me know.\n\n", "environment": "Fresh new install of PuppetServer on freshly installed CentOS 7.2 server:\n\n* puppetserver-2.4.0-1.el7.noarch\n* puppetdb-termini-4.1.2-1.el7.noarch\n* puppet-agent-1.5.3-1.el7.x86_64\n\nHiera version: {{3.2.0}}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53686", "fixedVersions": [], "id": "53686", "issueType": "Bug", "key": "HI-529", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:fbd7d726-b72b-42a6-ae12-f3625c180b32", "resolution": "Duplicate", "resolutionDate": "2016-08-03T15:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "literal interpolation function can appear only once", "timeSpent": "PT0S", "updated": "2016-08-04T03:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged to stable at: 98a0d54", "created": "2016-08-03T16:03:00.000000"}], "components": [], "created": "2016-08-03T10:59:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@563866fc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz7y93:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Hiera 3.2.x does not support Rubies < 1.9.3. The dependencies on 'json' and 'json_pure' has therefore been dropped from hiera's gemspec to make it easier to consume hiera as a gem."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_587630174_*|*_1_*:*_1_*:*_99088_*|*_10007_*:*_1_*:*_18146839_*|*_5_*:*_1_*:*_85169393_*|*_6_*:*_1_*:*_0"}], "description": "json_pure was added as a dependency to hiera to enable easier development with ruby 1.8.7 (which doesn't include a json implementation). With hiera now supporting only ruby 1.9.3+, the dependency is no longer needed.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54010", "fixedVersions": ["HI 3.2.1"], "id": "54010", "issueType": "Bug", "key": "HI-528", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2016-08-10T11:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Remove json_pure dependency", "timeSpent": "PT0S", "updated": "2016-08-11T10:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There is not enough information here to recreate the problem.\n\n* What made you suspect that the problem is in hiera?\n* Have you asserted that the context in which you are using the template has the variables in question set?\n\nAs this ticket stands there is nothing that can be acted on.", "created": "2016-07-29T02:13:00.000000"}, {"author": "623e7603d32a94006a65d5f3", "body": "* What made you suspect that the problem is in hiera?\nThese are the content of {{file2.yaml}} hiera yaml file", "created": "2016-07-29T09:24:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "No, sorry, that does not help. You would need to add checks to your manifest to assert that you did or did not get the values from hiera. They do not magically appear inside of an ERB template - there is logic in between (the place where you call the template function, and what led up to that).\n\nSince you are a PE user (the version you entered indicates that) you should contact Puppet support and they will help you untangle what is wrong.\nI am going to close this ticket as incomplete for now. Tell support you opened this ticket and they can reopen it if it turns out something is actually wrong with hiera / puppet and it is not a configuration error or similar.", "created": "2016-07-30T06:11:00.000000"}], "components": ["PE"], "created": "2016-07-28T14:39:00.000000", "creator": "623e7603d32a94006a65d5f3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1ddcda85"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz7tuv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Jul/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_41430284_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_100953389"}], "description": "We are having this issue where Component/module template file is not being update by hiera data content. This works on our current puppet 3.8 version, we are migrating our modules but this is looking  like a blocker at the moment.\n\n* We have a template file named {{file.conf.py.erb}} which has variable entries. \n* The variable entries are updated by whatever we have in {{file2.yaml}} hiera data\n\nSample content of {{file.conf.py.erb}}\n{code}\nDATABASES = {\n  'default': {\n\t'ENGINE': 'sentry.db.postgres',\n\t'NAME': '<%= @db_name %>',\n\t'USER': '<%= @db_user %>',\n\t'PASSWORD': '<%= @db_password %>',\t\n\t'HOST': '<%= @db_host %>',\n\t'PORT': '<%= @db_port %>',\n     }\n}{code}\n\n\nSample content of {{file2.yaml}} hiera file\n{code}\n        db_name: 'name'\n        db_user: 'useroi'\n        db_password: 'my_password'\n        db_host: 'abc.com'\n        db_port: '8964'\n{code}", "environment": "PE 4.5.2, Ubuntu 14.04 server edition", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53574", "fixedVersions": [], "id": "53574", "issueType": "Bug", "key": "HI-527", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623e7603d32a94006a65d5f3", "resolution": "Incomplete", "resolutionDate": "2016-07-30T06:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera not passing data to erb template file", "timeSpent": "PT0S", "updated": "2016-07-30T06:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Solved by HI-528 (json_pure no longer used).", "created": "2017-08-22T08:54:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Marked fixed as this is no longer an issue.", "created": "2017-08-22T08:55:00.000000"}], "components": [], "created": "2016-07-28T09:33:00.000000", "creator": "623c146d1c7f6a007049ea28", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1eb8a3e1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz7tg7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_33693686133_*|*_6_*:*_1_*:*_0"}], "description": "Hiera has a dependency on json_pure of >= 0: https://github.com/puppetlabs/hiera/blob/master/.gemspec\n\njson_pure 2.0.2 dropped support for Ruby 1.9.3, so installs of Hiera, and therefore also Puppet, now fail on environments with Ruby 1.9.3.\n\nSomething needs to be added that restricts the version of json_pure to <= 2.0.1 if ruby is 1.9.3. I believe Kylo has mentioned to me in a PR that there are no plans to up the minimum ruby requirement for Puppet prior to 5.0, so I think this is the path of least resistance here.", "environment": "All using Ruby 1.9.3", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54009", "fixedVersions": [], "id": "54009", "issueType": "Bug", "key": "HI-526", "labels": ["hiera"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c146d1c7f6a007049ea28", "resolution": "Fixed", "resolutionDate": "2017-08-22T08:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ruby 1.9.3 and json_pure 2.0.2", "timeSpent": "PT0S", "updated": "2017-08-22T08:55:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] this is not urgent", "created": "2016-07-07T14:53:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "-hiera is perfect.  no testing necessary-\n\nthere is some layout of testing strategy for the various backends that should each be the same:\nhttps://testrail.ops.puppetlabs.net/index.php?/suites/view/384&group_by=cases:section_id&group_order=asc\none can see which are marked as automated and not.  this probably needs a revisit.\n\nkinda scary, i think i did that my first week here.\nthe hiera tests should probably be backend agnostic, test all features and then loop over backends... \n\nhopefully this helps!", "created": "2016-07-07T16:39:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "yes, there is some coverage for the yaml backend.  could be better.\nnot very much, if any, for json.  this could be abstracted and run for all backends, as i implied above.  \n\nwho is doing the work is another question.  my first inclination is to keep the ticket on one scrum board, so its QA team would do, or advise on that work.", "created": "2016-07-08T12:07:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "As this project was picked up opportunistically to take advantage of us having an intern available to work on it this summer, my hope is for this to not end up being disruptive to QA to whatever extent is possible.\n\nMy personal opinion is that if we simply achieve the same level of coverage as what we currently have for yaml/JSON, that should be sufficient, and if others agree with that, we can probably just have the developers handle all of the work.  If QA believes we need to increase the coverage beyond that, then we can discuss options in terms of ownership.", "created": "2016-07-08T12:14:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "that works for me! (y)", "created": "2016-07-08T13:04:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "+1 to ensuring that hocon's test coverage is approximately equivalent to that we already have for YAML/JSON.", "created": "2016-07-08T13:36:00.000000"}], "components": [], "created": "2016-07-07T14:52:00.000000", "creator": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1b42f082"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "SERVER-1146"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:bab073e0-f060-421e-9465-366c4060cc31"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz7erj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Puppet Server"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Jul/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_502706468_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_6816902172"}], "description": "We will have spec coverage for HI-341 and PUP-6476.  Need to sync up with QA and determine whether there is existing beaker coverage for the YAML backends, and if so, consider adding coverage for HOCON as well.", "epicLinkSummary": "lookup hocon support", "estimate": "PT0S", "externalId": "53683", "fixedVersions": [], "id": "53683", "issueType": "Task", "key": "HI-525", "labels": [], "originalEstimate": "PT0S", "parent": "14976", "parentSummary": "lookup hocon support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "resolution": "Done", "resolutionDate": "2016-09-30T08:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "test coverage for hiera/lookup hocon support", "timeSpent": "PT0S", "updated": "2016-09-30T08:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "1. something like eyaml and sensitive data would need to be integrated to form a complete solution\n2. eyaml works with lookup since lookup works with global hiera. There is no data provider (for lookup) that handles eyaml. (That is you cannot have eyaml files in environments and modules).\n3. work not estimated - the files are not difficult, it is the workflow/tooling around them to write the data that is somewhat tricky (I think).\n4. we have considered writing a data provider as a contribution to eyami project\n\nI think 4 is the most reasonable short term solution as people are already using eyaml and would want to use it in modules and environments. They are already using it and are familiar with it.\n\nLonger term, I would like to see a new hiera data format that makes it possible to directly return rich data. That could then include Binary, Sensitive/Encrypted data. I can also imagine that we have utilities to update the data files (akin to how this is done with eyaml). \n\nComing to think of it - when adding the hocon data format maybe we should reserve keys from the beginning (the main problem is that the top namespace in all hiera data files are user determined names except {{lookup_options}}. What I am thinking is something like {{meta}}, and {{data}}. OTOH, it may be enough to record a key with an option under {{lookup_options}} that denotes the format", "created": "2016-07-07T15:29:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Don't think there is much need for a hocon eyaml variant. If there is, it is a trivial addition once an eyaml function has been implemented (change loading of yaml to loading of hocon).\n\nNot sure if this should even be done.", "created": "2016-12-14T13:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as duplicate of PUP-7100 where eyaml support is added to hiera 5.\nIf there is demand for a hocon version that is trivially implemented by writing such a function (copy the function added in PUP-7100 and change the read to read hocon instead of yaml). ", "created": "2017-01-19T05:10:00.000000"}], "components": [], "created": "2016-07-07T14:49:00.000000", "creator": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@265e230c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-7016"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623c0ff494742a00683e3fe4"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymtjj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Puppet Server"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Jul/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_502839441_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_16400435517"}], "description": "Lots of hiera users use eyaml to encrypt strings in their hiera files.  Some questions:\n\n1. Will this continue to be relevant given the \"sensitive data\" work that is underway?\n2. If so, does eyaml work with the new puppet lookup stuff?  How?\n3. How much work would it be to provide similar tooling for encrypting fields in HOCON files?\n4. This does not seem like something that would be necessary for an MVP, but is it something we'd want to consider building later?  Or is it something that might emerge from the community if there's a strong demand for it?", "epicLinkSummary": "5.0.0 Lookup features", "estimate": "PT0S", "externalId": "53639", "fixedVersions": [], "id": "53639", "issueType": "Task", "key": "HI-524", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "26083", "parentSummary": "5.0.0 Lookup features", "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "resolution": "Duplicate", "resolutionDate": "2017-01-19T05:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "determine strategy for something like eyaml for hocon", "timeSpent": "PT0S", "updated": "2017-04-03T13:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "6243b71b258562006fa2e483", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "IIRC, you have to use {{hiera_hash}} to get hash lookup and merges. The key that you are looking up needs to be a hash everywhere", "created": "2016-07-05T16:39:00.000000"}, {"author": "6243b71b258562006fa2e483", "body": "Thanks for the response [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]. Turns out that you're right and that I should have been using hiera_hash instead of the regular hiera call. Thanks again", "created": "2016-07-06T08:33:00.000000"}], "components": [], "created": "2016-07-05T13:03:00.000000", "creator": "6243b71b258562006fa2e483", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2a1411a5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz7d6f:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Jul/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12959909_*|*_6_*:*_2_*:*_1341939_*|*_10004_*:*_1_*:*_57149249"}], "description": "When performing `puppet agent -t` on my node I am not receiving the hiera values that I expect. I have specified the deeper merge strategy as:\n\n{code}\n:hierarchy:\n  - \"%{::fqdn}\"\n  - common\n:merge_behavior: deeper\n:deep_merge_options:\n  :knockout_prefix: '--'\n{code}\nI have also installed the gem using:\n{code}\npuppetserver gem install deep_merge\n{code}\nIn common.yaml I have something like:\n{code}\nfoo:\n  - bar: \"hello\"\n  - baz: \"world\"\n{code}\nand then in my node's yaml file I have\n{code}\nfoo: \n  - \"hello\"\n{code}\nWhen performing a run w/ {{hiera(\"foo\", {})}} I'm only getting a single item when I would expect two\n\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53893", "fixedVersions": [], "id": "53893", "issueType": "Bug", "key": "HI-522", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "6243b71b258562006fa2e483", "resolution": "Won't Do", "resolutionDate": "2016-07-06T08:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "deeper merge not being respected", "timeSpent": "PT0S", "updated": "2016-07-06T08:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] will add this as acceptance criteria to HI-519 and will close this out.", "created": "2016-09-21T16:24:00.000000"}], "components": ["Windows"], "created": "2016-06-27T18:37:00.000000", "creator": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7897cf47"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz7893:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7425100973_*|*_6_*:*_1_*:*_0"}], "description": "The Hiera {{yaml_load_file}} delegates to Rubys loading of YAML files which specifies {{:encoding => 'bom|utf8'}} when loading files.\n\nThis isn't documented well, and we don't have any protection against regressions in the ability of Hiera to load YAML files (for instance, if another YAML parser was selected).\n\nSome additional specs should be added to cover this situation.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53920", "fixedVersions": [], "id": "53920", "issueType": "Task", "key": "HI-520", "labels": ["i18n", "utf-8"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "resolution": "Duplicate", "resolutionDate": "2016-09-21T17:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add Unicode specs for loading YAML files", "timeSpent": "PT0S", "updated": "2016-09-21T17:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "[~accountid:557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c] / [~accountid:557058:3da95088-202d-4082-a15a-eb2e812f2578] I'm not sure the correct fixVersion here given I would like to target agent 1.6.0 if possible.  I thought that that might be 3.3.0 and created that version... then realized it might actually be 3.2.2.", "created": "2016-06-27T18:35:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "Yeah [~accountid:557058:263afade-3e4f-46c6-b50a-cf2982192562], so far we don't have a plan/need to bump Hiera in puppet-agent 1.5.3, so the version would be 3.2.2 unless there is something causing a 'y' version bump in puppet-agent 1.6.0. [~accountid:557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c] or [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] may have more insight here. /cc [~accountid:557058:315adc9a-49dc-4753-86d1-4536fc30e3f3]", "created": "2016-06-28T09:29:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Yeah this sounds like just a bug-fix, not a feature, so I'd consider this a Z. However, AFAICT, we haven't released 3.2.1 yet. If so, it would be 3.2.1. If I missed something and there is a 3.2.1 release, then yeah, this would be 3.2.2.", "created": "2016-07-05T12:58:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Is the same problem true for data files loaded by lookup? (If so, ticket needed).", "created": "2016-08-10T08:46:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "I put an initial PR for this here - https://github.com/puppetlabs/hiera/pull/359", "created": "2016-08-10T09:24:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The data providers in lookup (json and yaml) read content with File read with utf-8 (json), and with YAML.load_file (yaml). if BOM support is to be supported there as well, a ticket is needed for the {{json_data_provider_factory.rb}} ('utf-8' specified on line 18).", "created": "2016-09-22T06:09:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:263afade-3e4f-46c6-b50a-cf2982192562] this probably qualifies as that low-hanging fruit we talked about in planning. PR re-raised", "created": "2017-01-12T15:22:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] which fix version should this be targeted for? 3.3?", "created": "2017-01-12T15:38:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "hi [~accountid:557058:3da95088-202d-4082-a15a-eb2e812f2578] - yes, 3.3.0 is fine", "created": "2017-01-12T15:40:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Note that many of the hiera backends will not be in use with hiera 5.0. In the hiera 5.0 implementation json, yaml, hocon are all read using utf8. Also not that eyaml uses YAML.load and would also get utf-8 by default. There is currently no \"BOM\" mentioned in the hiera 5 encoding options however.\n\nThis means that the change made in the PR for this ticket will not change code that is actually used by Puppet, only if hiera is used in a stand alone way or from code directly using hiera.\n", "created": "2017-01-17T09:55:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Merged to master in https://github.com/puppetlabs/hiera/commit/e07f4d7023a1caf9aa4cb7d3cf3c4f1dc289bf80", "created": "2017-01-17T15:58:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:263afade-3e4f-46c6-b50a-cf2982192562] please provide release notes for this issue.", "created": "2017-01-23T07:41:00.000000"}, {"author": "557058:c241032a-c552-4408-9a96-dcd5a643ff69", "body": "Green through puppet-agent#master at https://jenkins-master-prod-1.delivery.puppetlabs.net/view/puppet-agent/view/master/view/puppet-agent/job/platform_puppet-agent_intn-van-sys_suite-daily-hiera-master/4/", "created": "2017-01-24T09:50:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Despite being merged into the branch for {{3.3.0}}, this code was inadvertently reverted and will be re-targeted at {{3.3.1}}", "created": "2017-02-21T21:30:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:557058:263afade-3e4f-46c6-b50a-cf2982192562], [~accountid:557058:3bbf1c83-df0e-4372-887d-cfc38dee9330], [~accountid:557058:3da95088-202d-4082-a15a-eb2e812f2578] It looks like this is the root cause of an issue affecting SERVER-1724. See https://puppet.atlassian.net/browse/SERVER-1724?focusedCommentId=413233&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-413233. Given the change is low-risk, I'd be in favor of including this in HI 3.3.1 for PA 1.9.3.", "created": "2017-03-02T13:15:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged (again) to stable at dffeae8", "created": "2017-03-02T15:18:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "hiera#750562b puppet-agent#fb8bb30c1 passed in puppet-agent#stable in https://jenkins-master-prod-1.delivery.puppetlabs.net/view/puppet-agent%20suite%20pipelines/job/platform_puppet-agent_intn-van-sys_suite-daily-hiera-stable/25/", "created": "2017-03-05T19:09:00.000000"}], "components": [], "created": "2016-06-27T18:31:00.000000", "creator": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Acceptance Criteria", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Create a UTF8 JSON file that contains Unicode characters and read it with Hiera"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@22fd2494"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-6718"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "QA Risk Assessment Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Covered in spec; low risk of data loss or downtime"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz8ebj:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Hiera did not read data files into cache using utf-8 which could lead to encoding problems occurring much later. Now the data files (yaml, json) are read with utf-8 encoding."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Windows"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_855717654_*|*_1_*:*_1_*:*_8233_*|*_10007_*:*_2_*:*_440894765_*|*_10009_*:*_1_*:*_54587356_*|*_4_*:*_1_*:*_536317451_*|*_5_*:*_2_*:*_1104067097_*|*_6_*:*_2_*:*_1904877321_*|*_10006_*:*_1_*:*_7426343085_*|*_10005_*:*_1_*:*_9759504966"}], "description": "When using a YAML backend, files are automatically loaded as UTF-8 by default, thanks to Ruby code at https://github.com/ruby/ruby/blob/trunk/ext/psych/lib/psych.rb#L474-L476\n\nHowever, when loading JSON files, Puppet simply calls Ruby's {{File.read}} without specifying an encoding.  On Windows this will cause problems trying to read UTF8 files, as Ruby will attempt to instead use the default external encoding.\n\nSee code at https://github.com/puppetlabs/hiera/blob/4e85a733cbce09634a59005cda6ae169648c67ab/lib/hiera/filecache.rb#L50-L61\n\nThe fix should be to specify {{:encoding => 'bom|utf8'}} as an option to {{File.read}}.\n\nIf there are other consumers of the FileCache class, then the {{read_file}} method should probably take an additional {{options}} parameter so that callers may override the default behavior.\n\nIt might also be useful to scan the Hiera code for other such calls to {{File}} where the encoding has not been explicitly specified.\n\n*Note*\nAdditional Acceptance Criteria copied from HI-520:\n* The Hiera yaml_load_file delegates to Rubys loading of YAML files which specifies :encoding => 'bom|utf8' when loading files. This isn't documented well, and we don't have any protection against regressions in the ability of Hiera to load YAML files (for instance, if another YAML parser was selected). Some additional specs should be added to cover this situation.", "epicLinkSummary": "Phase 1 Puppet Unicode Adoption Blockers", "estimate": "PT0S", "externalId": "53868", "fixedVersions": ["HI 3.3.1"], "id": "53868", "issueType": "Bug", "key": "HI-519", "labels": ["i18n", "utf-8"], "originalEstimate": "PT0S", "parent": "25002", "parentSummary": "Phase 1 Puppet Unicode Adoption Blockers", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "resolution": "Fixed", "resolutionDate": "2017-03-06T10:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera Filecache doesn't support encoding / doesn't load JSON backend files as UTF-8", "timeSpent": "PT0S", "updated": "2018-07-31T12:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "it is really simple to work around by defining puppet functions with the same name and signature as the {{hiera_xxx}} functions by placing them in the site.pp. These function can then delegate to the {{lookup()}} function.\n\nWhile this works it is not ideal, and does not help migrating off the {{hiera_xxx}} functions. To do that, we need to change the implementation of the functions to always go via {{lookup}} rather than directly calling classic hiera. If we do this there are a couple of decision to make:\n\n* Is it ok to turn this on by default in puppet 4.6, or do we need an opt-in (setting).\n* Can we deprecate the {{hiera_xxx}} if using --strict ?\n\nPing [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0]", "created": "2016-06-14T08:57:00.000000"}, {"author": "557058:1b20a5d2-cb4e-4afc-acf2-fe8bdb8c7919", "body": "[~accountid:557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4]\n\nI was working with Reid, and we tested these function overrides (Thanks [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]).  You can place this in your site.pp (not a module) and it will override the hiera_XXX() functions to use lookup(). \n  function hiera($key,$def = undef, $level = undef) {\n\n{code}\nfunction hiera($key, $def = undef, $level = undef) {\n  if $level != undef { fail('Lookup does not support hiera level override') }\n  lookup ($key, {'default_value' =>  $def})\n}\n\nfunction hiera_array($key, $def = undef, $level = undef) {\n  if $level != undef { fail('Lookup does not support hiera level override') }\n  lookup ($key, {'default_value' => $def, 'merge' => 'unique'})\n}\n\nfunction hiera_hash($key, $def = undef, $level = undef) {\n  if $level != undef { fail('Lookup does not support hiera level override') }\n  lookup ($key, {'default_value' => $def, 'merge' => 'hash'})\n}\n{code}", "created": "2016-06-14T10:53:00.000000"}, {"author": "557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4", "body": "Well that is a simple work around. \n\nAdding functions into pp files is one of those things that never popped into my head..  we never do it, and never thought you could just do that.\n\nI will give this a go.  Thanks Henrik, Mike & Reid! ", "created": "2016-06-14T13:13:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "I'd strongly prefer to leave the underlying implementation as-is and let people use this very simple workaround until they can change the modules to use lookup() directly.\n\ncc [~accountid:623c08e1562ab90069f8aed4]", "created": "2016-06-22T16:00:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] We should probably add deprecation warnings in the hiera_xxx functions (say if --strict is in use) even if we do not alter their implementation in any other way. The deprecations would be beneficial for those that do not use the workaround as it tells them they need to change to lookup eventually.", "created": "2016-06-22T16:18:00.000000"}, {"author": "557058:97578a32-3955-4c5c-939e-58a878437b49", "body": "[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] [~accountid:623c08e1562ab90069f8aed4] even if we don't provide a transitional behavior for the built-in hiera_xxx functions, this seems like a universal enough problem in adopting {{lookup()}} we would need to document this workaround formally somewhere - maybe a page like https://docs.puppet.com/puppet/latest/reference/lookup_quick.html.\n\nWithout the ability to override hiera_xxx functionality to use lookup() instead transitioning to the new system imposes an undue burden on users, especially those who use and reference large numbers of modules in their Puppetfile and may not have easy access to modify those modules.", "created": "2016-06-22T16:28:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "Ha, this workaround hadn't occurred to me either, but it's simple and clever and seems pretty bulletproof. \n\nI'm in favor of documenting it. We'll be revamping the Puppet lookup docs as we work to bring it out of experimental status, and this looks like a good component to include. ", "created": "2016-06-22T16:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c08e1562ab90069f8aed4] - Do you want to use this ticket for the documentation? \n", "created": "2016-08-22T07:06:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Yes, we'll use this ticket for docs about how to stub out those functions. \n\nFor Puppet 5, will we want to knock out the old implementations completely? Or is that too soon?", "created": "2016-08-31T17:55:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I am thinking deprecation first (that is, relay the functions to lookup and issue a deprecation warning). I can imagine supporting that for a period of time. If it comes too late in the 4.x series then dropping them in 5.0 would be too soon.", "created": "2016-08-31T18:34:00.000000"}, {"author": "557058:97578a32-3955-4c5c-939e-58a878437b49", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] given that this ticket has been converted to docs, is there now a ticket somewhere else to track making the {{hiera()}} functions relay to {{lookup()}} rather than failing outright as they do today?", "created": "2016-10-27T15:47:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:97578a32-3955-4c5c-939e-58a878437b49] See eric 0's comment earlier about just using the to be documented workaround instead of making any changes to the existing functions.\n\nAre you saying that is not enough?", "created": "2016-10-27T17:16:00.000000"}, {"author": "557058:97578a32-3955-4c5c-939e-58a878437b49", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] ah", "created": "2016-10-27T17:48:00.000000"}, {"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "I tend to agree with Reid's analysis.  I suspect that users would be okay with switching their own modules to use lookup although even sometimes that can be hard but when you use a community module that uses a hiera function call you have less recourse and you'd prefer that it just work.  \n\nIs there a technical reason to not allow lookup to defer to hiera?", "created": "2016-10-27T18:14:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "No technical reasons except \"we changed it, it is different, it may cause unknown things to occur\" even if we believe the risk is low.", "created": "2016-10-27T18:29:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "[~accountid:557058:97578a32-3955-4c5c-939e-58a878437b49] and [~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] Okay, just to be clear: what the docs are going to say about this is something like the following: \n\n{quote}\nTo fully enable Puppet lookup:\n\n* Put a lookup.yaml file in any environment that contains hiera data.\n* Put a lookup.yaml file in $confdir.\n* Download this manifest file (enable_lookup.pp) and put it in the {{manifests}} directory of each environment. (You can skip this step, but if you do, the classic hiera, hiera_array, hiera_hash, and hiera_include functions cannot use lookup's advanced features.)\n{quote}\n\nIn other words, we're going to frame it as just a normal part of enabling lookup in an environment, and we'll have the file available for download. \n\nDoes that allay your concerns? I think switching the hiera functions is super important, but I also think it MUST be opt-in as part of switching to lookup, unless we're going to cut a new major version. The workflow here (add a lookup.conf file, add a file to the manifests dir) seems lightweight enough to not block adoption. ", "created": "2016-11-04T11:53:00.000000"}, {"author": "557058:97578a32-3955-4c5c-939e-58a878437b49", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] [~accountid:623c08e1562ab90069f8aed4] in talking to [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] in the hallway the other day I realized I had a mis-understanding of the ticket. I had believed that this work-around was currently necessary to use {{lookup()}} at all. That {{hiera()}} calls would raise an exception when a value was set for {{environment_data_provider}}. To be clear, that is NOT the case for the current version of Puppet (4.7.0).\n\nI'm on the right page now. It makes sense now that this is a documentation ticket.", "created": "2016-11-07T16:07:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c08e1562ab90069f8aed4] and [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] Note, that if we were to always relay the {{hiera_xxx}} functions to the {{lookup}} function, then it will in turn delegate them to the same hiera implementation that the {{hiera_xxx}} functions are calling. Thus, if a user has classic hiera data and nothing else the exact same results should be returned - the only difference being that the environment in data and in modules would also be included if it was in place (same effect as the workaround shown in this ticket).\n\nI am not convinced that a major version release is required to do that provided we do not alter the API for the ruby {{hiera_xxx}} functions.\n\nIf we are going to have almost everyone do the work around, we could just as well provide it out of the box.", "created": "2016-11-07T16:28:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "ok, so we made puppet automatically handle hiera_xxx calls if there is a hiera.yaml in the environement's root. We decided to take that as a signal that you are opting in to the entire idea. It is then crazy to make the user having to jump through hoops to make things work.\n\nThe full story is here (\"migrating to hiera 5\"): https://docs.google.com/document/d/12bX5iq-RD6iQ9Ipd5yTEbg2jzezYKGjVJBUu-yKuGgs/edit#heading=h.rimjzxbjiihz\n", "created": "2016-12-14T13:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is relevant in as much as before hiera 5, the hiera functions were not delegating at all to lookup. Now they do without any jumping through hoops. Hence, we did deliver of this ticket's original intent. What remains is only documentation. If there are other tickets that cover that, this ticket requires no further action.", "created": "2017-01-12T19:17:00.000000"}, {"author": "557058:db3c8c5c-5825-4424-a788-64c2fa922e24", "body": "OK, so we could close this after Puppet 4.9 ships?", "created": "2017-01-12T19:34:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We have a series of Story tickets for hiera 5 use cases where the work was carried out in other tickets - think this ticket should be handled the same way as the rest.", "created": "2017-01-13T05:10:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We have shipped 4.9 and hiera 5 and delegation for the hiera_xxx files is now handled (even if there are bugs to be fixed in the about to be released 4.9.4).\nClosing.", "created": "2017-03-09T03:48:00.000000"}], "components": ["DOCS"], "created": "2016-06-14T08:23:00.000000", "creator": "557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@28ee8115"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-6484"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hym8yf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2080745_*|*_5_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_23140230745"}], "description": "Using the hiera per environment feature, is a bit difficult right now.  With 80+ forge modules,  most of them use hiera_xx functions, which don't work with the new hiera version - as you are required to use the lookup() function.\n\nAdoption of this new experimental feature is limited because there isn't backwards compatibility with the ubiquitous  hiera() hiera_array() and hiera_hash() functions.\n\nIt would be beneficial for us to use the new hiera per environment, and new hiera 4 configuration.  [~accountid:557058:97578a32-3955-4c5c-939e-58a878437b49] / [~accountid:623c1730a2f6400069eb7e5f] has been experimenting with this. \nThis ticket created at the request of [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]. \n\nThanks!\n\nUPDATE\n----\nWe made puppet automatically handle {{hiera_xxx}} calls if there is a {{hiera.yaml}} in the environment's root. We decided to take that as a signal that you are opting in to the entire idea. It is then crazy to make the user having to jump through hoops (aliasing functions etc.) to make things work.\n\nThe full story is here (\"migrating to hiera 5\"): https://docs.google.com/document/d/12bX5iq-RD6iQ9Ipd5yTEbg2jzezYKGjVJBUu-yKuGgs/edit#heading=h.rimjzxbjiihz\n\nFor Users of Puppet < 4.9.0\n----\nFor users of Puppet < 4.9.0, the work around discussed in this ticket is still of value, but if that workaround is used, it should be removed when switching to Puppet 4.9.0.\nWith that in mind, we should not actively recommend the work around.", "epicLinkSummary": "Productize 'lookup'", "estimate": "PT0S", "externalId": "53638", "fixedVersions": [], "id": "53638", "issueType": "Story", "key": "HI-518", "labels": [], "originalEstimate": "PT0S", "parent": "27001", "parentSummary": "Productize 'lookup'", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4", "resolution": "Fixed", "resolutionDate": "2017-03-09T03:48:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "How to make hiera_xxx functions delegate to lookup()", "timeSpent": "PT0S", "updated": "2017-03-09T03:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This looks like a usage question. Please ask this on puppet ask, or the google group.", "created": "2016-06-01T09:14:00.000000"}], "components": [], "created": "2016-06-01T06:55:00.000000", "creator": "557058:4a2181e5-3152-4d0d-8eb4-9f95da9a944e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@44101027"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz6pnj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "01/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_8375194_*|*_6_*:*_1_*:*_0"}], "description": "Hello, I am not sure if this is possible at all, but let me introduce with challenge I am experiencing.\nI have this configuration:\n\n\n{code:java}\ncloud::provision:\n  'strname':\n    key1: str1\n    key2: str2\n    sg_key:\n      -\n        protocol: 'tcp'\n        port: '1111'\n        cidr: '172.31.0.0/16'\n      -\n        protocol: 'tcp'\n        port: '2222'\n        cidr: '172.31.0.0/16'\n      -\n        protocol: 'tcp'\n        port: '3333'\n        cidr: '172.31.0.0/16'\n{code}\n\n\nSo, I have a lot of these rules (array of hashes) for every security group for every EC2 instance on AWS. I want to simplify whole process and make a lookup like this:\n\n*common.yaml*\n\n{code:java}\nlookupkey:\n      -\n        protocol: 'tcp'\n        port: '1111'\n        cidr: '172.31.0.0/16'\n      -\n        protocol: 'tcp'\n        port: '2222'\n        cidr: '172.31.0.0/16'\n      -\n        protocol: 'tcp'\n        port: '3333'\n        cidr: '172.31.0.0/16'\n{code}\n\n\nand have this:\n\n\n{code:java}\ncloud::provision:\n  'strname':\n    key1: str1\n    key2: str2\n    sg_key: \"%{hiera('lookupkey')}\"\n{code}\n\nDoing a lookup from CLI (first example), I am getting this response:\n\n\n{code:java}\n{\"strname\"=>\n  {\"key1\"=>\"str1\",\n   \"key2\"=>\"str2\",\n   \"sg_key\"=>\n    [{\"protocol\"=>\"tcp\", \"port\"=>\"1111\", \"cidr\"=>\"172.31.0.0/16\"},\n     {\"protocol\"=>\"tcp\", \"port\"=>\"2222\", \"cidr\"=>\"172.31.0.0/16\"},\n     {\"protocol\"=>\"tcp\", \"port\"=>\"3333\", \"cidr\"=>\"172.31.0.0/16\"}]}}\n{code}\n\n\nIf I try to do a lookup in second example (with hiera lookup), I am getting this:\n\n\n{code:java}\n{\"strname\"=>\n  {\"key1\"=>\"str1\",\n   \"key2\"=>\"str2\",\n   \"sg_key\"=>\n\"[{\\\"protocol\\\"=>\\\"tcp\\\", \\\"port\\\"=>\\\"1111\\\", \\\"cidr\\\"=>\\\"172.31.0.0/16\\\"}, {\\\"protocol\\\"=>\\\"tcp\\\", \\\"port\\\"=>\\\"2222\\\", \\\"cidr\\\"=>\\\"172.31.0.0/16\\\"}, {\\\"protocol\\\"=>\\\"tcp\\\", \\\"port\\\"=>\\\"3333\\\", \\\"cidr\\\"=>\\\"'172.31.0.0/16\\\"}]\"}}\n\n{code}\n\n\n\nIs this possible at all? Thanks.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53892", "fixedVersions": [], "id": "53892", "issueType": "Improvement", "key": "HI-517", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4a2181e5-3152-4d0d-8eb4-9f95da9a944e", "resolution": "Incomplete", "resolutionDate": "2016-06-01T09:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Lookup on hash of arrays", "timeSpent": "PT0S", "updated": "2016-06-01T09:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is completely up to the Ruby YAML implementation. It is responsible for turning the data files in Yaml into a structure in memory. The Ruby yaml implementation varies with Ruby version. \n\nAs far as the Yaml serialization (in puppet, for some object) being odd, there is not much information in this ticket to go on. Please log a separate ticket with enough detail describing what exactly is wrong if this is a real problem.\n\nThe reading of yaml files is not something we can do anything about", "created": "2016-06-01T09:29:00.000000"}], "components": [], "created": "2016-06-01T06:29:00.000000", "creator": "623c10661c7f6a007049e7a4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6accca13"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz6pnb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "01/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10821994_*|*_6_*:*_1_*:*_0"}], "description": "Hi. I stumbled upon a weird behavior of hiera. If I put\n{noformat}\nxyz: 1,2,3\n{noformat}\ninto a hiera yaml and then lookup the value of xyz, I get 123 (Fixnum type) instead of '1,2,3' (String type) ... this is kind of strange, isn't it? Especially since Ruby outputs a yaml key containing a string value '1,2,3' unquoted (xyz: 1,2,3) so this behavior seems inconsistent to me. Is this intentional? If so, is it documented somewhere?\n\nThanks a lot!", "environment": "CentOS 6, Arch Linux testing", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53867", "fixedVersions": [], "id": "53867", "issueType": "Bug", "key": "HI-516", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c10661c7f6a007049e7a4", "resolution": "Incomplete", "resolutionDate": "2016-06-01T09:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera: comma-separated numbers treated as Fixnum and serialized strangely", "timeSpent": "PT0S", "updated": "2016-06-01T09:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:13:00.000000", "creator": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": ["Platforms"]}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@13aa5b3f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyn9xb:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Pulled in as part of another ticket"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Release Engineering"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_542362018_*|*_1_*:*_1_*:*_22062_*|*_10007_*:*_1_*:*_70245967_*|*_5_*:*_1_*:*_6802373262_*|*_6_*:*_1_*:*_0"}], "description": "There are instances (such as the compilation of the puppet-agent project) where we do not want the installation of facter to create batch files. There needs to be an option to omit batch files", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53891", "fixedVersions": ["HI 3.2.2"], "id": "53891", "issueType": "Task", "key": "HI-515", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "resolution": "Fixed", "resolutionDate": "2016-05-24T17:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add option to omit batch files from installation", "timeSpent": "PT0S", "updated": "2016-10-30T08:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:eed196ef-8398-487f-85b1-ea05b0530321", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Which Puppet version are you using? (The error handling and reporting of line numbers etc. is done on the puppet side, not inside of hiera).\nIf you are on a newer puppet, you can use the {{lookup}} function and the functionality that is offered by the {{lookup}} CLI which among other things have an {{\\--explain}} option.", "created": "2016-05-17T10:05:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "The hiera_hash method is deprecated and we won\u2019t be making any changes to it, so I\u2019m going to close this.\n\nInstead use the lookup function as it provides better information when actual and expected types don\u2019t match.", "created": "2022-02-17T00:05:00.000000"}], "components": ["Community"], "created": "2016-05-17T05:17:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:eed196ef-8398-487f-85b1-ea05b0530321", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6f22675b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz6dav:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_17282981_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_181580393284"}], "description": "The hiera_hash function fails with type error when a key is empty (or wrong type), which makes sense but the error message doesn't provide much information to help debug the issue:\n\n{noformat}\nError: Could not run: Hiera type mismatch: expected Hash and got NilClass\n{noformat}\n\nIt would be nice if it contained:\n* Where in puppet manifest was hiera_hash function called from (file name + line number)\n* Where in hiera is the offending key stored (file name + line number)\n\nHere is an example to reproduce the issue:\n\n\n{noformat}\n#-- Assuming hiera.yaml\n:hierarchy:\n   - web01.example.com\n   - common\n\n#-- Assuming common.yaml:\nusers:\n   regular:\n     'cdouglas': 'Carrie Douglas'\n\n#-- Assuming web01.example.com.yaml:\nusers:\n#   administrators:\n#     'aberry': 'Amy Berry'\n{noformat}\n\n\n{noformat}\n#-- Assuming we are web01.example.com:\n\n$allusers = hiera_hash('users')\n{noformat}\n\nThe case where I saw this happen is when user hashed out a bunch of values but left the top level key as illustrated above.  Took a while to hunt it down in the hierarchy and wasn't immediately obvious what happened.", "environment": "CentOS 6", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53716", "fixedVersions": [], "id": "53716", "issueType": "Bug", "key": "HI-514", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:eed196ef-8398-487f-85b1-ea05b0530321", "resolution": "Won't Do", "resolutionDate": "2022-02-17T00:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Better error reporting for hiera type mismatch", "timeSpent": "PT0S", "updated": "2022-02-17T00:05:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2016-05-12T09:40:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:644c8f1e-128d-49a4-a082-2631a32a1a0a", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@568e312e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz69xr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1560992_*|*_6_*:*_1_*:*_0"}], "description": "I'm running into an issue in hiera with using the literal() interpolation function multiple times in the same string. I end up with the error \"/home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/recursive_guard.rb:13:in `check': Lookup recursion detected in [literal('%')] (Hiera::InterpolationLoop)\"\n\nIf the literal function is used only once in the same string, it works as expected.\n\n{code:java}\n\n[vagrant@buildy ~]$ hiera --version\n3.1.2\n\n[vagrant@buildy ~]$ cat hiera.yaml \n---\n:backends:\n  - yaml\n\n:hierarchy:\n  - common\n\n:yaml:\n  :datadir: /home/vagrant\n\n[vagrant@buildy ~]$ cat common.yaml \n---\ncontent: \"%{literal('%')}{secret} %{literal('%')}{secret2}\"\n\n[vagrant@buildy ~]$ pwd\n/home/vagrant\n\n[vagrant@buildy ~]$ hiera --config ~/hiera.yaml content\n/home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/recursive_guard.rb:13:in `check': Lookup recursion detected in [literal('%')] (Hiera::InterpolationLoop)\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/interpolate.rb:68:in `do_interpolation'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/interpolate.rb:47:in `block in interpolate'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/interpolate.rb:46:in `gsub'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/interpolate.rb:46:in `interpolate'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:142:in `parse_string'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:153:in `parse_answer'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend/yaml_backend.rb:37:in `block in lookup'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:120:in `block in datasourcefiles'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:92:in `block in datasources'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:90:in `map'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:90:in `datasources'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:115:in `datasourcefiles'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend/yaml_backend.rb:17:in `lookup'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:270:in `block (2 levels) in lookup'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:268:in `catch'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:268:in `block in lookup'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:263:in `each'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera/backend.rb:263:in `lookup'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/lib/hiera.rb:112:in `lookup'\n\tfrom /home/vagrant/.gem/ruby/gems/hiera-3.1.2/bin/hiera:246:in `<top (required)>'\n\tfrom /home/vagrant/bin/hiera:23:in `load'\n\tfrom /home/vagrant/bin/hiera:23:in `<main>'\n{code}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53572", "fixedVersions": [], "id": "53572", "issueType": "Bug", "key": "HI-513", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:644c8f1e-128d-49a4-a082-2631a32a1a0a", "resolution": "Duplicate", "resolutionDate": "2016-05-12T10:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera recursion error in multiple instances of literal interpolation function", "timeSpent": "PT0S", "updated": "2016-08-03T14:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b0098632-f6a5-4120-9a61-70f8cf89e31f", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "[~accountid:557058:b0098632-f6a5-4120-9a61-70f8cf89e31f] - This appears to be a support issue. Can you field it?", "created": "2016-08-15T12:26:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There is not enough information in the report to make it possible to take any action. Closing this as \"incomplete\". Feel free to reopen the ticket if there is more information available that makes it possible to recreate the problem.", "created": "2016-08-15T12:48:00.000000"}], "components": ["Community"], "created": "2016-04-21T12:20:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:2ae11258-6ea9-48d2-93ff-42e32b1d7fe0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2178ba5b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz5twn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10024109878_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53934", "fixedVersions": [], "id": "53934", "issueType": "Task", "key": "HI-512", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:2ae11258-6ea9-48d2-93ff-42e32b1d7fe0", "resolution": "Incomplete", "resolutionDate": "2016-08-15T12:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "My Organization have an a DNS Puppet and I need insert  an CNAME record", "timeSpent": "PT0S", "updated": "2016-08-15T12:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "Is this the same as PUP-6178 (duplicate?)\n", "created": "2016-04-20T17:24:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Not a dup. Puppet and hiera both look for hiera.yaml and both need to follow the same logic.", "created": "2016-04-20T23:20:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged to master at: 2d49944", "created": "2016-05-03T11:40:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "Tested on centos-7-x86_64 on latest stable puppet agent build sha: ff5120793a2108ae7e0f835cbe02f1f87914abd4.\n\nI tested this by creating three versions of hiera.yaml and putting them in three different directories.  Each points to a global.yaml data file in different directories in /etc/puppetlabs/code/hieradir.  The global.yaml files present different values for the key: hello::hiera_dir.\n\nThe command: 'hiera hello::hiera_dir' was run, the outcome of which depends on which config file was recognized by the hiera command.\n\n\nhiera config file -> heira data -> value for \"hello::heira_dir\" key\n\n/etc/puppetlabs/code/hiera.yaml ->  /etc/puppetlabs/code/hieradata/codedir -> hello::hiera_data = \"code dir!\"\n/etc/puppetlabs/puppet/hiera.yaml ->  /etc/puppetlabs/code/hieradata/confdir -> hello::hiera_data = \"conf dir!\"\n/etc/puppetlabs/mydir/hiera.yaml ->  /etc/puppetlabs/code/hieradata/mydir -> hello::hiera_data = \"my dir!\"\n\nThe manifest for this configuration is attached.\n\nTest 1: hiera looks for hiera.yaml first in codedir\n{code}\n[root@fko8ioib8q9ser7 puppetlabs]# ls */hiera.yaml\ncode/hiera.yaml  mydir/hiera.yaml  puppet/hiera.yaml\n[root@fko8ioib8q9ser7 puppetlabs]# hiera hello::hiera_dir\ncode dir!\n[root@fko8ioib8q9ser7 puppetlabs]#\n{code}\n\nTest 2: without codedir/hiera.yaml, hiera uses confdir/hiera.yaml\n{code}\n[root@fko8ioib8q9ser7 puppetlabs]# rm code/hiera.yaml\nrm: remove regular file \u2018code/hiera.yaml\u2019? y\n[root@fko8ioib8q9ser7 puppetlabs]# hiera hello::hiera_dir\nconf dir!\n[root@fko8ioib8q9ser7 puppetlabs]#\n{code}\n\nTest 3: hiera honors -c option, specifying the hiera config file\n{code}\n[root@fko8ioib8q9ser7 ~]# cd /etc/puppetlabs\n[root@fko8ioib8q9ser7 puppetlabs]# puppet apply ~/pup-6178-hi-510-manifest\nNotice: Compiled catalog for fko8ioib8q9ser7.delivery.puppetlabs.net in environment production in 0.05 seconds\nNotice: /Stage[main]/Main/File[/etc/puppetlabs/code/hiera.yaml]/ensure: defined content as '{md5}a38e66528bd868862e54bff91fa7fcf9'\nNotice: Applied catalog in 2.91 seconds\n[root@fko8ioib8q9ser7 puppetlabs]# ls */hiera.yaml\ncode/hiera.yaml  mydir/hiera.yaml  puppet/hiera.yaml\n[root@fko8ioib8q9ser7 puppetlabs]# hiera hello::hiera_dir\ncode dir!\n[root@fko8ioib8q9ser7 puppetlabs]# hiera -c code/hiera.yaml hello::hiera_dir\ncode dir!\n[root@fko8ioib8q9ser7 puppetlabs]# hiera -c puppet/hiera.yaml hello::hiera_dir\nconf dir!\n[root@fko8ioib8q9ser7 puppetlabs]# hiera -c mydir/hiera.yaml hello::hiera_dir\nmy dir!\n[root@fko8ioib8q9ser7 puppetlabs]#\n{code}", "created": "2016-05-05T14:54:00.000000"}, {"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "Closing ticket as part of HI 3.2.0 release tasks.", "created": "2016-05-17T16:16:00.000000"}], "components": [], "created": "2016-04-18T09:50:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@b748b09"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "HI-490"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Highest Test Level", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Acceptance"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynduv:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "New Feature"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Hiera now look for hiera.yaml in codedir first, then confdir"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Apr/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_184300743_*|*_1_*:*_1_*:*_267300_*|*_10007_*:*_1_*:*_33842239_*|*_3_*:*_1_*:*_30503772_*|*_5_*:*_1_*:*_1041716673_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_170405_*|*_10006_*:*_1_*:*_1237954407"}], "epicLinkSummary": "Move hiera.yaml from codedir to confdir", "estimate": "PT0S", "externalId": "53840", "fixedVersions": ["HI 3.2.0"], "id": "53840", "issueType": "Improvement", "key": "HI-510", "labels": [], "originalEstimate": "PT0S", "parent": "53829", "parentSummary": "Move hiera.yaml from codedir to confdir", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2016-05-05T14:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Look for hiera.yaml in codedir first, then confdir", "timeSpent": "PT0S", "updated": "2016-05-17T16:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2016-04-13T16:53:00.000000", "creator": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2cfaba56"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz5ogv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_640696_*|*_10007_*:*_1_*:*_13105437_*|*_10009_*:*_1_*:*_154280878_*|*_5_*:*_1_*:*_2822211511_*|*_6_*:*_1_*:*_0"}], "description": "Because the Huawei Switch being used for testing is a Physical Switch, we will need to have static node config file for the acceptance tests.", "environment": "CI Pipeline", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53714", "fixedVersions": [], "id": "53714", "issueType": "Task", "key": "HI-509", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "resolution": "Fixed", "resolutionDate": "2016-04-15T15:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add static node config for huawei switch", "timeSpent": "PT0S", "updated": "2016-05-18T07:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged to stable at: 318c398", "created": "2016-03-24T10:05:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "And to master at: da6579e", "created": "2016-03-24T10:52:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged to master at: ef4f0de", "created": "2016-03-24T11:04:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "\nTested it out again and now it behaves correctly.  'hiera foo.bar' returns an error as it should, not 'bar' like it did.  hiera \"'foo.bar'\" is still correct too.\n\n{code}\n[root@ck82rr92hvgfuzk hieradata]# cat common.yaml\n---\n  a.b: '(hiera) a dot b'\n  a.c.scope: \"\\\"a dot c: %{'a.b'}\\\"\"\n  a.c.hiera: 'a dot c: %{hiera(\\\"''a.b''\\\")}'\n\n  foo: bar\n  foo.bar: baz\n  foo_dot_bar: foo.bar\n  quoted_foo_dot_bar: \"%{foo.bar}\"\n  mine:\n    yep: \"yes\"\n    nope: \"no\"\n[root@ck82rr92hvgfuzk hieradata]# hiera \"'foo.bar'\"\nbaz\n[root@ck82rr92hvgfuzk hieradata]# hiera foo.bar\n/usr/local/share/ruby/site_ruby/hiera/backend.rb:318:in `block in qualified_lookup': Hiera type mismatch: Got String when a hash-like object was expected to enable lookup using key 'bar' (Exception)\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:310:in `each'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:310:in `qualified_lookup'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:273:in `block (2 levels) in lookup'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:266:in `catch'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:266:in `block in lookup'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:261:in `each'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:261:in `lookup'\n\tfrom /usr/local/share/ruby/site_ruby/hiera.rb:113:in `lookup'\n\tfrom /usr/bin/hiera:246:in `<main>'\n[root@ck82rr92hvgfuzk hieradata]#\n{code}\nPuppetLabs382:01-160329 sgriffin$", "created": "2016-03-29T20:14:00.000000"}], "components": [], "created": "2016-03-23T10:06:00.000000", "creator": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b018d32"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynip3:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "When looking up a key with a dot , e.g. 'foo.bar', and foo was bound to a string containing the next segment ('bar') the value 'bar' was be returned instead of the expected undef."}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Found"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Fixed while investigating if problem found in HI-504 was a regression or not (it wasn't)."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_468127140_*|*_1_*:*_1_*:*_92539_*|*_10007_*:*_2_*:*_84123900_*|*_3_*:*_1_*:*_1271738_*|*_5_*:*_1_*:*_2462944853_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1239096"}], "description": "A subkey of a dotted key can be matched by a string that contains the key. Given the following hiera (yaml):\n{code:yaml}\n---\nfoo: bar\n{code}\na lookup of the key 'foo.bar' will produce 'bar'. This happens because Hiera asks if the value responds to {{:\\[\\]}} and a ruby {{String}} will. Then {{\"bar\"\\[\"bar\"\\]}} returns {{\"bar\"}}.\n\nACCEPTANCE CRITERIA\n----\n* that a lookup of {{foo.bar}} does not produce {{'bar'}} when the key {{foo}} is bound to the string {{'bar'}}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53837", "fixedVersions": ["HI 3.1.2"], "id": "53837", "issueType": "Bug", "key": "HI-508", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "resolution": "Fixed", "resolutionDate": "2016-03-29T20:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Subkeys can be matched by string values that contain the subkey.", "timeSpent": "PT0S", "updated": "2016-04-27T08:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We had a similar problem with 3.1.0 against stable. That was caused by test ordering problems in rspec tests involving the \"puppet\" backend which no longer exists. That problem was activated by correcting another ordering problem that made the test run as it was intended (but wrong).\n\n[~accountid:557058:e0340dee-9d48-48c3-8c6a-02597af847c9] Would be good to see the error in context", "created": "2016-03-18T11:10:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d]", "created": "2016-03-18T11:11:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:e0340dee-9d48-48c3-8c6a-02597af847c9] More information is needed to be able to act on this. (See comments above). Closing as 'incomplete' at the moment. Please reopen if there is more information.", "created": "2016-08-03T03:41:00.000000"}], "components": [], "created": "2016-03-18T07:46:00.000000", "creator": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@13fd4c56"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz54zb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12248181_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_11896240494"}], "description": "When testing against Puppet 3.8, there are no errors.\n\nHowever, when testing against Puppet 4.3.2, the following error is raised:\n\n{code:ruby}\nPuppet::PreformattedError:\n       Evaluation Error: Error while evaluating a Function Call, Cannot load backend rspec: cannot load such file -- hiera/backend/rspec_backend at ...\n{code}\n\nWhen the following is added to the Gemfile, the error does not persist:\n\n{code:ruby}\ngem 'hiera', '~> 3.0.0'\n{code}", "environment": "ruby 1.9.3p551 (2014-11-13 revision 48407) [x86_64-linux]\npuppetlabs_spec_helper-0.10.3\npuppet-4.3.2\nfacter-2.4.6", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53836", "fixedVersions": [], "id": "53836", "issueType": "Bug", "key": "HI-505", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "resolution": "Incomplete", "resolutionDate": "2016-08-03T03:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 3.1.0 with Puppet 4.3.2 is causing an error during spec testing.", "timeSpent": "PT0S", "updated": "2017-03-01T17:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0f8ca1d81f0069d8e00f", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The cache eviction looks like a known problem that has been fixed in a later release, together with fixes to quite a few lookup related problems.  Can you try with the latest version of puppet agent?\n\n", "created": "2016-03-23T06:22:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "See PUP-4474 for the things that have been fixed wrt lookup in the various 4.x releases.", "created": "2016-03-23T06:24:00.000000"}, {"author": "623c0f8ca1d81f0069d8e00f", "body": "Hello,\n\nI'm sorry, but I'm totally confused about your version system.\n\nI'm using the latest Debian package provided be your Debian repository, just upgraded today:\n\n{noformat}\npuppet-agent                   1.4.1-1jessie\n$ puppet -V \n4.4.1\n{noformat}\n\nwhich I suppose is the latest version.\n\nI must use a --facts option pointing to ./test.yaml\n\n{noformat}\n---\nfqdn : mynode.univie.ac.at\nenvironment : my_env\n{noformat}\n\nin\n\n{noformat}\npuppet lookup --node mynode.univie.ac.at foo::bar_1 --environment my_env  --facts ./test.yaml --explain --debug\n{noformat}\n\nto receive data. Without these facts nil returns.\n\nBTW: non of these keys in the facts file has any influence:\n\n{noformat}\ntrusted.certname : mynode.univie.ac.at\n::trusted.certname : mynode.univie.ac.at\n::fqdn : mynode.univie.ac.at\n::environment : my_env\n{noformat}\n\n", "created": "2016-03-30T07:44:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The {{lookup}} command is intended to run on the master or in a puppet apply scenario on the actual node. It is not at present possible to run a remote lookup on an agent. When using the master scenario, the agent must have called in at least once to the master as that makes that node's facts available to the command.\n\nThe first thing to assert is that a regular compilation works as intended, and that you can do very simple things with a simple key. This to make sure everything is in the right place, that you are running the right version, etc.\n\nPuppet 4.4.1 is the latest released version of puppet.\n\nI think you would be greatly helped by finding someone on IRC to help you through a simple scenario so you have a working base / workflow to expand from. Our similar tests work as they should and it is hard to spot any obvious problems in the material you have reported in this ticket.\n", "created": "2016-03-30T15:14:00.000000"}], "components": [], "created": "2016-03-17T10:06:00.000000", "creator": "623c0f8ca1d81f0069d8e00f", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@29c0896a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz544f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Mar/16"}], "description": "Hello,\n\nI try to work as most in userspace and therefor run `puppet lookup\u00b4 here.\nSetting up my own puppetlabs environment, copying the code to /home/me/.puppetlabs/etc/code/my_env and configuring my own hiera.yaml but this failes:\n\n{code:java}\n$ cat /home/me/.puppetlabs/etc/code/hiera.yaml\n---\n:backends:\n  - yaml\n:yaml:\n:hierarchy:\n  - \"node/%{::fqdn}\"\n  - \"node/%{::trusted.certname}\"\n  - \"os/%{::osfamily}__%{::lsbdistcodename}\"\n  - \"users\"\n  - \"common\"\n:logger: puppet\n:merge_behavior: deeper\n:deep_merge_options:\n  :knock_out_prefix: '--'\n{code}\nI tried to use `puppet lookup\u00b4\n\n$ puppet lookup --node mynode.univie.ac.at   foo::bar_1  --environment my_env --explain --debug\n\nThe output is very strange:\n\n{noformat}\nDebug: Applying settings catalog for sections main, master, ssl, metrics\nDebug: Evicting cache entry for environment 'my_env'\nDebug: Caching environment 'my_env' (ttl = 0 sec)\nDebug: Evicting cache entry for environment 'my_env'\nDebug: Caching environment 'my_env' (ttl = 0 sec)\nDebug: Evicting cache entry for environment 'my_env'\nDebug: Caching environment 'my_env' (ttl = 0 sec)\nDebug: Evicting cache entry for environment 'my_env'\nDebug: Caching environment 'my_env' (ttl = 0 sec)\nDebug: Failed to load library 'selinux' for feature 'selinux'\nDebug: Using settings: adding file resource 'confdir': 'File[/home/me/.puppetlabs/etc/puppet]{:path=>\"/home/me/.puppetlabs/etc/puppet\", :ensure=>:directory, :loglevel=>:debug, :links=>:follow, :backup=>false}'\nDebug: Using settings: adding file resource 'codedir': 'File[/home/me/.puppetlabs/etc/code]{:path=>\"/home/me/.puppetlabs/etc/code\", :ensure=>:directory, :loglevel=>:debug, :links=>:follow, :backup=>false}'\n.\n.\n.\nDebug: Facter: fact \"facterversion\" has resolved to \"3.1.5\".\nDebug: Facter: skipping external facts for \"/home/me/.puppetlabs/opt/facter/facts.d\": No such file or directory\nDebug: Facter: skipping external facts for \"/home/me/.facter/facts.d\": No such file or directory\nDebug: Facter: no external facts were found.\nDebug: Facter: resolving networking facts.\n.\n.\n.\nDebug: Evicting cache entry for environment 'my_env'\nDebug: Caching environment 'my_env' (ttl = 0 sec)\nDebug: Performing a hiera indirector lookup of lookup_options with options {:variables=>Scope(Class[main]), :merge=>#<Puppet::Pops::HashMergeStrategy:0x0000000396e698 @options_t=#<Puppet::Pops::Types::PStructType:0x00000003966f60 @elements=[#<Puppet::Pops::Types::PStructElement:0x00000003966f88 @key_type=#<Puppet::Pops::Types::POptionalType:0x00000003966fb0 @type=#<Puppet::Pops::Types::PStringType:0x00000003967000 @size_type=nil, @values=[\"strategy\"]>>, @value_type=#<Puppet::Pops::Types::POptionalType:0x000000039670f0 @type=#<Puppet::Pops::Types::PPatternType:0x00000003967118 @patterns=[#<Puppet::Pops::Types::PRegexpType:0x00000003967230 @pattern=\"hash\", @regexp=/hash/>]>>>]>, @options={}>}\nDebug: hiera(): Hiera YAML backend starting\nDebug: hiera(): Looking up lookup_options in YAML backend\nDebug: hiera(): Looking for data source os/____\nDebug: hiera(): Cannot find datafile /etc/puppetlabs/code/environments//hieradata/os/____.yaml, skipping\nDebug: hiera(): Looking for data source users\nDebug: hiera(): Cannot find datafile /etc/puppetlabs/code/environments//hi\neradata/users.yaml, skipping\nDebug: hiera(): Looking for data source common\nDebug: hiera(): Cannot find datafile /etc/puppetlabs/code/environments//hi\neradata/common.yaml, skipping\nDebug: Performing a hiera indirector lookup of foo::bar_1 with \noptions {:variables=>Scope(Class[main]), :merge=>#<Puppet::Pops::FirstFoundStrat\negy:0x00000003646678 @options_t=#<Puppet::Pops::Types::PStructType:0x0000000363c\nf10 @elements=[#<Puppet::Pops::Types::PStructElement:0x0000000363cf38 @key_type=\n#<Puppet::Pops::Types::POptionalType:0x0000000363cf60 @type=#<Puppet::Pops::Type\ns::PStringType:0x0000000363cfb0 @size_type=nil, @values=[\"strategy\"]>>, @value_t\nype=#<Puppet::Pops::Types::POptionalType:0x0000000363d230 @type=#<Puppet::Pops::\nTypes::PPatternType:0x0000000363d258 @patterns=[#<Puppet::Pops::Types::PRegexpTy\npe:0x0000000363d3c0 @pattern=\"first\", @regexp=/first/>]>>>]>, @options={}>}\nDebug: hiera(): Looking up foo::bar_1 in YAML backend\nDebug: hiera(): Looking for data source os/____\nDebug: hiera(): Cannot find datafile /etc/puppetlabs/code/environments//hi\neradata/os/____.yaml, skipping\nDebug: hiera(): Looking for data source users\nDebug: hiera(): Cannot find datafile /etc/puppetlabs/code/environments//hi\neradata/users.yaml, skipping\nDebug: hiera(): Looking for data source common\nDebug: hiera(): Cannot find datafile /etc/puppetlabs/code/environments//hi\neradata/common.yaml, skipping\nMerge strategy first\n  Data Binding \"hiera\"\n    No such key: \"foo::bar_1\"\n  Data Provider \"EnvironmentDataProvider\"\n    No such key: \"foo::bar_1\"\n  Module \"foo\"\n    Module not found\n{noformat}\n\nSeems that it look into the root Configuration\nand it ignores the hostname given with `--node mynode.univie.ac.at \u00b4 nor probes a hieradata/node directory.\n\nThank you\nAndreas", "environment": "\n{noformat}\n$ cat /etc/debian_version \n8.3\n$ dpkg -l | grep puppet\nii  puppet-agent                   1.4.0-1jessie   \nii  puppetdb-termini               3.2.4-1puppetlabs1 \nii  puppetlabs-release-pc1         0.9.3.3.g91e66b9-1jessie\nii  puppetserver                   2.3.0-1puppetlabs1 \n\n{noformat}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53835", "fixedVersions": [], "id": "53835", "issueType": "Bug", "key": "HI-506", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c0f8ca1d81f0069d8e00f", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "When working in userspace `puppet lookup\u00b4 does not respect the `--node\u00b4 option nor use userspace hiera.yaml", "timeSpent": "PT0S", "updated": "2016-03-30T15:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:9f6ff9a9-4f34-4d8d-a759-5b36bf88ecd1", "attachments": [{"attacher": "623c0f8ca1d81f0069d8e00f", "created": "2016-03-17T07:17:00.000000", "name": "common.yaml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14172"}, {"attacher": "623c0f8ca1d81f0069d8e00f", "created": "2016-03-17T07:17:00.000000", "name": "hiera.yaml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14180"}], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Duplicated HI-504 which will be released in Hiera 3.1.1", "created": "2016-03-23T06:16:00.000000"}, {"author": "623c0f8ca1d81f0069d8e00f", "body": "Sorry, but I cannot confirm, that with Hiera 3.1.1 this issue is resolved.\nIn contrary, with\n\n{noformat}\n puppetserver                   2.3.1-1puppetlabs1\n puppet-agent                   1.4.1-1jessie\n$ /opt/puppetlabs/bin/hiera -V\n3.1.1\n{noformat}\n\nneither *hiera* command itself nor *puppet lookup* show up true for *foo.bar* I still get nil!\n\n", "created": "2016-03-30T07:18:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is still a duplicate of HI-504 so I will close this again. Please do not reopen this. You can see how this was verified on HI-504, also note the easy to make mistakes by others when trying to verify (being bitten by shell quoting etc.). If you have a reproducible sample that shows the problem please post that on Hi-504.", "created": "2016-03-30T07:39:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Maybe I was a bit quick. Are you saying that the example in this ticket is failing for you?", "created": "2016-03-30T07:41:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] Can you take a look if the example works, or if there is something wrong with HI-504 ?", "created": "2016-03-30T07:42:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "The problem is that lookup passes a dotted key verbatim to Hiera (lookup has no special processing for dotted keys). Hiera splits the key (it's not quoted). Hence, in the example above it looks for the keys 'foo::@*#bar' (no quotes in there) and 'foo'. It doesn't find 'foo' and hence, raises an error. Lookup has no idea that this particular provider splits keys so it reports that 'foo.bar' cannot be found.\n\nThe behavior would be different if an Hiera Data Provider was used (for environment or module data). It will not split the key unless it's found in an interpolation expression. A behavior which in itself can be seen as somewhat inconsistent.\n", "created": "2016-03-30T08:27:00.000000"}, {"author": "623c0f8ca1d81f0069d8e00f", "body": "Yes, my example above is failing even with Hiera 3.1.1\n\nFor my output of your HI-504 checks look at [https://puppet.atlassian.net/browse/HI-504]\n\nThank you\nAndreas", "created": "2016-03-30T08:28:00.000000"}, {"author": "623c0f8ca1d81f0069d8e00f", "body": "Hello,\n\nAre you telling me, that this works as being designed?\n\nAt least it is very confusing when somebody like me did an upgrad from puppet3 to puppet4.\nWith puppet3 this YAML-key with a dot inside was valid and could be used with any tool reporting the respective value. After upgrading to puppet4 it took me half a day to find out this dot is not valid any more even using hiera command itself. And I'm aware of friends running into the same problem.\n\nMay I suggest, that you update your upgrade-documentation including this issue.\n\nThank you\nAndreas", "created": "2016-03-30T08:48:00.000000"}, {"author": "5f3522e8ea5e2f00394018fe", "body": "Hello [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d],\n\nI apology for bringing you back on old topic, but  could you please clarify a bit more the solution for this \"dot issue\" with keynames in Hiera. I hit same problem while migrating from Puppet3 to Puppet4.  I found that your explanation in this discussion matches behavior I observe for my case.  I also read the related tickets and discussions, but I haven't got clear understanding how to make it run properly, yet. \n\nMy particular case is: I use puppet to distribute users' ssh keys, where user names are in format \"firstname.lastname\". It works fine with Puppet3, but with Puppet4 (Agent v. 4.10.8", "created": "2017-10-03T05:33:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:5f3522e8ea5e2f00394018fe], I assume that you have a yaml or (corresponding json) file somewhere with that looks like this:\n{code:yaml}\nssh::keys::firstname.lastname: some value\n{code}\nand not like this\n{code:yaml}\nssh::keys::firstname:\n   lastname: some value\n{code}\nand you wonder why value isn't found? Expressed as a hash, the two forms would look like this:\n{code:ruby}\n{ 'ssh::keys::firstname.lastname' => 'some value' }         # first example\n{ 'ssh::keys::firstname' => { 'lastname' => 'some value' }} # second example\n{code}\nand unless you quote the key (as in really include quotes in a quoted string, not just quote the string itself), then the lookup will roughly do the equivalence of:\n{code:puppet}\nlookup('ssh::keys::firstname')['lastname']\n{code}\nIf you however really want to lookup something stored in the first form, then you must do like this:\n{code:puppet}\nlookup(\"'ssh::keys::firstname.lastname'\")\n{code}\n(note that this is a single quoted string surrounded by double quotes).\n\nDoes that answer your question?\n", "created": "2017-10-03T10:32:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79] Repurposing this ticket to be about enhancing the documentation (at some place where we are pointing out the differences between hiera 3 and hiera 5) wrt. looking up keys that have dots {{.}} in them. At some point in the history of hiera and related tools, a 'dot' became a dig operation into the structure. In hiera 5 a user can force a key to be used verbatim by including quotes in the key - for example {{lookup(\"'has.dot'\")}} or {{lookup('\"has.dot\"')}} as that stops hiera 5 from interpreting this as a dig into the value for the key {{has}}.\n\nFeel free to move this ticket to be a Docs ticket.", "created": "2017-10-03T12:06:00.000000"}, {"author": "5f3522e8ea5e2f00394018fe", "body": "Hi [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d], \n\nThank you for the prompt response. With the provided clarification and example I made it run. My configuration matches the \"first example\".  The key moment which solved my issue was quoting the whole key.  I had done different wrong quoting, before I saw your example, which really helped me make it run. \n \nThanks, \nMihail ", "created": "2017-10-03T12:27:00.000000"}, {"author": "557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79", "body": "[~accountid:557058:9f6ff9a9-4f34-4d8d-a759-5b36bf88ecd1], since you're rewriting the Hiera docs, this might be something you should address there. Let me know if that's not right for any reason.", "created": "2017-10-12T11:46:00.000000"}, {"author": "557058:9f6ff9a9-4f34-4d8d-a759-5b36bf88ecd1", "body": "A note for this has been added to the new revision of Hiera docs which will be up in the next couple of weeks. ", "created": "2017-10-13T16:23:00.000000"}], "components": ["DOCS"], "created": "2016-03-17T07:25:00.000000", "creator": "623c0f8ca1d81f0069d8e00f", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2297a2b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz541r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_514286868_*|*_4_*:*_1_*:*_1193316_*|*_5_*:*_1_*:*_0_*|*_6_*:*_2_*:*_608686574_*|*_10004_*:*_1_*:*_47708412177_*|*_10005_*:*_1_*:*_879742370"}], "description": "h1. Puppet lookup can handle several special characters as a part of yaml keys but not a dot:\n\n\n{code:java}\n$ cat hiera.yaml\n:backends:\n  - yaml\n:yaml:\n:hierarchy:\n  - \"common\"\n:logger: puppet\n:merge_behavior: deeper\n:deep_merge_options:\n  :knock_out_prefix: '--'\n{code}\n\n\n\n\n{code:java}\n$ cat common.yaml:\n---\nfoo.bar: yes\nfoo::@*#bar: yes\n{code}\n\n\n\n{code:java}\n$ puppet lookup --explain 'foo::@*#bar'\nData Binding \"hiera\"\n  Found key: \"foo::@*#bar\" value: true\n{code}\n\n\nBut foo.bar with the dot inside is not going to be found: \n\n{code:java}\n$ puppet lookup --explain 'foo.bar'\nMerge strategy first\n  Data Binding \"hiera\"\n    No such key: \"foo.bar\"\n  Data Provider \"EnvironmentDataProvider\"\n    No such key: \"foo.bar\"\n{code}\n\n\nPuppet agent fails the same.\n\nThank you\nAndreas", "environment": "\n\n{noformat}\n$ cat /etc/debian_version \n8.3\n{noformat}\n\n\n\n{noformat}\n$ dpkg -l | grep puppet\npuppet-agent                 1.4.0-1jessie \npuppetdb-termini            3.2.4-1puppetlabs1\npuppetlabs-release-pc1 0.9.3.3.g91e66b9-1jessie\npuppetserver                  2.3.0-1puppetlabs1\n\n{noformat}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53637", "fixedVersions": [], "id": "53637", "issueType": "Bug", "key": "HI-507", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c0f8ca1d81f0069d8e00f", "resolution": "Fixed", "resolutionDate": "2017-10-13T16:23:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Point out hiera 5's behaviour for 'dots in keys' in documentation ", "timeSpent": "PT0S", "updated": "2017-10-13T16:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Partially quoted keys must be supported (that is the most important use case). Having the entire key escaped is only for those that use top level for files and similar. The far more common are dots in things like IP addresses, and they are usually nested inside other structures.\n\nDid not review the rest of the PR because of this as I suspect (if not already supported) that it may require some elaborate changes.\n\nI am sorry if the partial key requirement was not obvious from the start.", "created": "2016-03-17T06:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged to hiera stable: b4f20ad", "created": "2016-03-17T15:22:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:6276d641-e632-46b8-833c-9c428719ae09", "body": "(I added this comment in PUP-5990, too....)\n\nHave you guys considered just looking for escaped dots instead of literally quoting the relevant part of the key? E.g. networking.interfaces.eth0\\.1000.bindings.0.address\n\nComing from a C/Perl/Python/Unix tools background, that seems to me like the more natural way to do this.\n", "created": "2016-03-21T12:26:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "-hmmm... i find a little bit of this behavior surprising.-\nubuntu1404 at stable puppet-agent SHA: 886c5abce595611182952f8f058c5a5f4c7c3594\n\nlooks like these changes aren't contained in the above SHA.\n\nleaving my config here for posterity \n{code}\nroot@j8ihqe5vqey3kxm:~# cat /etc/puppetlabs/code/hieradata/common.yaml\n---\n  foo: bar\n  foo_dot_bar: foo.bar\n  foo.notsub: nosub\n  quoted_dot_value: \"foo.bar\"\n  mine:\n    yep: \"yes\"\n    yep.notsub: \"you lookeded it up!\"\n  quoted_subkey_no_escape: \"%{mine.yep}\"\n  quoted_subkey: \"%{'mine.yep'}\"\n  partially_quoted_subkey: \"%{mine.'yep.notsub'}\"\n  partially_quoted_subkey_with_space: \"%{mine.'yep.notsub' foo}\"\n{code}\n", "created": "2016-03-21T12:33:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d]", "created": "2016-03-21T15:41:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Former user yes, using backslashes were considered, but that would have been a breaking change (people use backslashes in paths), and there is also the problem with layers of backslash escapes (how many you need in different situations). There is also precedence in facter for using quotes.\n\nThe entire interpolation think in hiera data could do with an overhaul. There are many strange things and deficiencies in that design.\n", "created": "2016-03-21T15:53:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:6276d641-e632-46b8-833c-9c428719ae09", "body": "Ah, makes sense. Thanks for the reply.", "created": "2016-03-21T16:11:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Not sure if there's a problem, but here's some info to clarify:\n\nThis is OK. A segment can be quoted:\n{code}\n  partially_quoted_subkey: \"%{mine.'yep.notsub'}\"\n{code}\nThis is not OK. A segment cannot be partially quoted. Whether or not it contains spaces is not relevant in this case since there's no dot present to separate 'yep.notsub'  from foo.\n{code}\n  partially_quoted_subkey_with_space: \"%{mine.'yep.notsub' foo}\"\n{code}\nTo test if a segment may contain spaces, use this:\n{code}\n  partially_quoted_subkey_with_space: \"%{mine.'   yep.notsub   '.foo}\"\n{code}\n", "created": "2016-03-21T16:42:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "I installed hiera from source using the head of stable.  Verified the changes described in the PR were present (checked lib/hiera/{backend.rb interpolate.rb util.rb}), and tried Eric's hiera configuration, attached as etc-puppetlabs-code.tgz, and found that it still doesn't work.\n{code}\n[root@yqzswyprb812ri9 puppetlabs]# grep -n \"\\@param key \\[String\\]\" /usr/local/share/ruby/site_ruby/hiera/backend.rb\n234:      # @param key [String] The key to lookup. May be quoted with single or double quotes to avoid subkey traversal on dot characters\n[root@yqzswyprb812ri9 puppetlabs]# cat code/hieradata/common.yaml\n---\n  foo: bar\n  foo.bar: baz\n  foo_dot_bar: foo.bar\n  quoted_foo_dot_bar: \"%{foo.bar}\"\n  mine:\n    yep: \"yes\"\n    nope: \"no\"\n\n[root@yqzswyprb812ri9 puppetlabs]# hiera foo.bar\nbar\n[root@yqzswyprb812ri9 puppetlabs]#\n{code}\nI extended the life of this vm until about 3am 3/23, if you want to log in and look .\n\n\n", "created": "2016-03-21T17:29:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "That's because you're not quoting the key. You're quoting the entry which YAML then parses and removes. I.e. Hiera never sees that quote. Try this:\n{code}\n---\n  foo: bar\n  foo.bar: baz\n  foo_dot_bar: foo.bar\n  quoted_foo_dot_bar: \"%{'foo.bar'}\"\n  mine:\n    yep: \"yes\"\n    nope: \"no\"\n{code}\nAlso, try accessing with quotes that are not removed by the shell (e.g. double quotes within single quotes):\n{code}\n# hiera '\"foo.bar\"'\n{code}", "created": "2016-03-21T17:34:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "ok.  i got this works if you are really really careful with quoting.\n\nagainst puppet-agent stable sha: 886c5abce595611182952f8f058c5a5f4c7c3594\non ubuntu1404\n{code}\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# cat hieradata/common.yaml\n---\n  foo: bar\n  foo_dot_bar: foo.bar\n  foo.notsub: nosub\n  quoted_dot_value: \"foo.bar\"\n  hiera_interp: \"%{hiera('foo')}\"\n  mine:\n    yep: \"yes\"\n    yep.notsub: \"you looked it up!\"\n  interpolated_subkey: \"%{hiera('mine.yep')}\"\n  partially_quoted_subkey2: \"%{hiera('mine.\\\"yep.notsub\\\"')}\"\n\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera foo_dot_bar\nfoo.bar\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera quoted_dot_value\nfoo.bar\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera mine.yep\nyes\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera foo.notsub\nnil\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera 'foo.notsub'\nnil\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera \"foo.notsub\"\nnil\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera '\"foo.notsub\"'\nnosub\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera 'mine.\"yep.notsub\"'\nyou looked it up!\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera interpolated_subkey\nyes\nroot@srm2w4tsqbd7a7x:/etc/puppetlabs/code# hiera partially_quoted_subkey2\nyou looked it up!\n{code}", "created": "2016-03-22T14:25:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "I think there is still a little problem.  Given the yaml data source for hiera below, hiera should return 'nil' for the key foo.bar.\n{code}\n---\n  foo: bar\n  foo.bar: baz\n  foo_dot_bar: foo.bar\n  quoted_foo_dot_bar: \"%{foo.bar}\"\n  mine:\n    yep: \"yes\"\n    nope: \"no\"\n{code}\nI need to properly quote \"'foo.bar'\" in order to get the value for the key with a dot in it.  Otherwise hiera should look for the 'bar' component of the 'foo' hash (which doesn't exist).\n\nIf I ask hiera for the value of foo.nothing, I get 'nil'.  Same should be true for foo.bar.\n{code}\n[root@flfwr5lz4p2w1o3 puppetlabs]# hiera foo\nbar\n[root@flfwr5lz4p2w1o3 puppetlabs]# hiera '\"foo.bar\"'\nbaz\n[root@flfwr5lz4p2w1o3 puppetlabs]# hiera foo.bar\nbar\n[root@flfwr5lz4p2w1o3 puppetlabs]# hiera foo.nothing\nnil\n[root@flfwr5lz4p2w1o3 puppetlabs]#\n{code}", "created": "2016-03-23T08:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] Looks like Sean found a bug.", "created": "2016-03-23T08:56:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd], [~accountid:557058:8872d0b6-d198-4e25-92ad-02776be82d59], there's indeed something weird going on here. It's not a regression though. I get the same results with hiera 3.0.0 (well, except for the now functional quoted key of course).", "created": "2016-03-23T09:28:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I added HI-508 to cover the problem with 'foo.bar' finding 'bar'.", "created": "2016-03-23T10:08:00.000000"}, {"author": "623c0f8ca1d81f0069d8e00f", "body": "/etc/puppetlabs/code/test.yaml :\n\n{noformat}\n---\n:backends:\n  - yaml\n:yaml:\n:datadir: /etc/puppetlabs/code/hieradata\n:hierarchy:\n  - \"test\"\n{noformat}\n\n/etc/puppetlabs/code/hieradata/test.yaml :\n\n{noformat}\n---\nfoo: bar  \nfoo_dot_bar: foo.bar\nfoo.notsub: nosub\nquoted_dot_value: \"foo.bar\"\nmine:\n  yep: \"yes\"\n  yep.notsub: \"you lookeded it up!\"\nquoted_subkey_no_escape: \"%{mine.yep}\"\nquoted_subkey: \"%{'mine.yep'}\"\npartially_quoted_subkey: \"%{mine.'yep.notsub'}\"\npartially_quoted_subkey_with_space: \"%{mine.'yep.notsub' foo}\"\n{noformat}\n\nBut it needs this location:\n\n{noformat}\n# ls -al /etc/puppetlabs/code/environments/hieradata\nlrwxrwxrwx 1 root root 12 Mar 30 16:06 /etc/puppetlabs/code/environments/hieradata -> ../hieradata\n{noformat}\n\neven if environments is not part of the :datadir definition in /etc/puppetlabs/code/test.yaml\n\nstrange!\n\n\n{noformat}\n# /opt/puppetlabs/bin/hiera -c ./test.yaml -V\n3.1.1\n \n# /opt/puppetlabs/bin/hiera -c ./test.yaml foo  -d\nDEBUG: 2016-03-30 16:07:26 +0200: Hiera YAML backend starting\nDEBUG: 2016-03-30 16:07:26 +0200: Looking up foo in YAML backend\nDEBUG: 2016-03-30 16:07:26 +0200: Looking for data source test\nDEBUG: 2016-03-30 16:07:26 +0200: Found foo in test\nbar\n\n# /opt/puppetlabs/bin/hiera -c ./test.yaml foo_dot_bar  -d\nDEBUG: 2016-03-30 16:07:54 +0200: Hiera YAML backend starting\nDEBUG: 2016-03-30 16:07:54 +0200: Looking up foo_dot_bar in YAML backend\nDEBUG: 2016-03-30 16:07:54 +0200: Looking for data source test\nDEBUG: 2016-03-30 16:07:54 +0200: Found foo_dot_bar in test\nfoo.bar\n\n# /opt/puppetlabs/bin/hiera -c ./test.yaml foo.notsub  -d\nDEBUG: 2016-03-30 16:08:07 +0200: Hiera YAML backend starting\nDEBUG: 2016-03-30 16:08:07 +0200: Looking up foo in YAML backend\nDEBUG: 2016-03-30 16:08:07 +0200: Looking for data source test\nDEBUG: 2016-03-30 16:08:07 +0200: Found foo in test\nnil\n\n# /opt/puppetlabs/bin/hiera -c ./test.yaml quoted_dot_value  -d\nDEBUG: 2016-03-30 16:08:32 +0200: Hiera YAML backend starting\nDEBUG: 2016-03-30 16:08:32 +0200: Looking up quoted_dot_value in YAML backend\nDEBUG: 2016-03-30 16:08:32 +0200: Looking for data source test\nDEBUG: 2016-03-30 16:08:32 +0200: Found quoted_dot_value in test\nfoo.bar\n\n# /opt/puppetlabs/bin/hiera -c ./test.yaml quoted_subkey_no_escape  -d\nDEBUG: 2016-03-30 16:09:44 +0200: Hiera YAML backend starting\nDEBUG: 2016-03-30 16:09:44 +0200: Looking up quoted_subkey_no_escape in YAML backend\nDEBUG: 2016-03-30 16:09:44 +0200: Looking for data source test\nDEBUG: 2016-03-30 16:09:44 +0200: Found quoted_subkey_no_escape in test\n\n\n# /opt/puppetlabs/bin/hiera -c ./test.yaml quoted_subkey  -d\nDEBUG: 2016-03-30 16:10:08 +0200: Hiera YAML backend starting\nDEBUG: 2016-03-30 16:10:08 +0200: Looking up quoted_subkey in YAML backend\nDEBUG: 2016-03-30 16:10:08 +0200: Looking for data source test\nDEBUG: 2016-03-30 16:10:08 +0200: Found quoted_subkey in test\n\n\n# /opt/puppetlabs/bin/hiera -c ./test.yaml partially_quoted_subkey  -d\nDEBUG: 2016-03-30 16:10:30 +0200: Hiera YAML backend starting\nDEBUG: 2016-03-30 16:10:30 +0200: Looking up partially_quoted_subkey in YAML backend\nDEBUG: 2016-03-30 16:10:30 +0200: Looking for data source test\nDEBUG: 2016-03-30 16:10:30 +0200: Found partially_quoted_subkey in test\n\nroot@godmother:/etc/puppetlabs/code# /opt/puppetlabs/bin/hiera -c ./test.yaml partially_quoted_subkey_with_space  -d\nDEBUG: 2016-03-30 16:10:51 +0200: Hiera YAML backend starting\nDEBUG: 2016-03-30 16:10:51 +0200: Looking up partially_quoted_subkey_with_space in YAML backend\nDEBUG: 2016-03-30 16:10:51 +0200: Looking for data source test\nDEBUG: 2016-03-30 16:10:51 +0200: Found partially_quoted_subkey_with_space in test\n/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/util.rb:61:in `split_key': Syntax error in interpolation expression: %{mine.'yep.notsub' foo} (Hiera::InterpolationInvalidValue)\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:100:in `scope_interpolate'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:70:in `block in do_interpolation'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/recursive_guard.rb:16:in `check'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:68:in `do_interpolation'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:47:in `block in interpolate'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:46:in `gsub'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/interpolate.rb:46:in `interpolate'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:142:in `parse_string'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:153:in `parse_answer'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend/yaml_backend.rb:37:in `block in lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:120:in `block in datasourcefiles'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:92:in `block in datasources'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:90:in `map'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:90:in `datasources'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:115:in `datasourcefiles'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend/yaml_backend.rb:17:in `lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:268:in `block (2 levels) in lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:266:in `catch'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:266:in `block in lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:261:in `each'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend.rb:261:in `lookup'\n        from /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera.rb:113:in `lookup'\n        from /opt/puppetlabs/bin/hiera:246:in `<main>'\n{noformat}\n\n", "created": "2016-03-30T08:21:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "The :datadir: should be nested under a backend, e.g.:\n{code:yaml}\n:backends:\n  - yaml\n:yaml:\n  :datadir: /etc/puppetlabs/code/hieradata\n{code}\nIn your example the :datadir: is not indented so the resulting hash becomes:\n{code:ruby}\n{:backends=>[\"yaml\"], :yaml=>nil, :datadir=>\"/etc/puppetlabs/code/hieradata\", :hierarchy=>[\"test\"]}\n{code}\nwhen it should be:\n{code:ruby}\n{:backends=>[\"yaml\"], :yaml=>{:datadir=>\"/etc/puppetlabs/code/hieradata\"}, :hierarchy=>[\"test\"]}\n{code}", "created": "2016-03-30T08:44:00.000000"}], "components": [], "created": "2016-03-16T03:59:00.000000", "creator": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3caa43ee"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-4474"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Highest Test Level", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Unit"}, {"fieldName": "QA Highest Test Level Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "well covered via fixtures and unit tests"}, {"fieldName": "QA Risk Probability", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Low"}, {"fieldName": "QA Risk Severity", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Medium"}, {"fieldName": "QA Risk Severity Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "can work around, requires some changes to hiera data and/or puppet code"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz52xb:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "New Feature"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "It is now possible to lookup keys in hiera data containing the character '.' (period), by quoting the entire name segment with either single or double quotes. Note that it is important to correctly quote using YAML or JSON syntax rules for single s. double quotes when using quoted keys in interpolation inside of the hiera data."}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "TODO list empty in current sprint"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_75206358_*|*_1_*:*_1_*:*_13973_*|*_10007_*:*_2_*:*_20575818_*|*_3_*:*_2_*:*_106772620_*|*_5_*:*_1_*:*_187240654_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_353868491"}], "description": "It is currently not possible to use keys that contains a dot character in Hiera since the dot character implies that the key is composed of several elements (subkeys). This is considered a  impediment by a large group of users who now has to change keys that normally contain dots to instead contain underscores or similar.\n\nA solution to the problem would be to allow keys to be quoted. What's between the quotes would then be used verbatim as a key and not be subjected to subkey parsing. Since quotes are already in use for interpolation methods (scope, hiera, alias), it must be possible to quote with either single or double quotes. A double quoted string may contain single quotes and vice versa.", "epicLinkSummary": "Complete the lookup, \"data in modules\" feature", "estimate": "PT0S", "externalId": "53833", "fixedVersions": ["HI 3.1.1"], "id": "53833", "issueType": "Improvement", "key": "HI-504", "labels": [], "originalEstimate": "PT0S", "parent": "26873", "parentSummary": "Complete the lookup, \"data in modules\" feature", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "resolution": "Fixed", "resolutionDate": "2016-03-22T14:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow interpolated keys to be quoted and contain dot characters", "timeSpent": "PT0S", "updated": "2016-03-30T08:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I think what you want is already implemented in PUP-5395 and available in Puppet 4.3.0. I am closing this as a duplicate. Please reopen if there was something that I did not understand.", "created": "2016-03-15T09:28:00.000000"}, {"author": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "body": "Henrik, no the above was NOT a typo.\nOnly the class is parameterized... the config is referencing it.\nThe multi-hierarchy only works if realized within the puppet code {...} and not in the class params (...).\nIf PUP-5395 fixes this that's fine, just want to confirm we are talking about the same thing.", "created": "2016-03-15T10:05:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "That is what PUP-5395 gives you control over. You can specify merge options per key inside of the data. Your puppet logic then becomes completely clean, no need to call any {{hiera}} functions at all. ", "created": "2016-03-15T10:23:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "R.I recently blogged about this - https://www.devco.net/archives/2016/03/13/the-puppet-4-lookup-function.php\n\n(I tried to change back to your original example, I hope I got it right. Still think what you want is PUP-5396, a.k.a {{lookup_options}}.\n\nNote that this is a Puppet thing, not a Hiera thing (although you do the binding in hiera data). ", "created": "2016-03-15T10:25:00.000000"}], "components": ["Community", "PE"], "created": "2016-03-15T09:17:00.000000", "creator": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@454c38ed"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz52dz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_696000_*|*_6_*:*_1_*:*_0"}], "description": "Currently since 1.x and still in 3.x there is a limitation of multi hierarchy in automatic parameter lookups.\nMany public component modules found online (including forge) utilize parameterized classes but if someone is using multi-hierarchy merging via deep or deeper merge_behavior this doesn't work and is known/documented limitation.\nProblem is this is fine probably for 90% of people but those people who are utilizing multi hierarchy lookups or different hiera backends (yaml/eyaml even at same hierarchy level) are now required to open pull requests to change:\n\n{code:puppet}\nclass foo ( $config = undef) {\n}\nclass foo::config { \n  $config = $::foo::config\n}\n{code}\nto \n{code:puppet}\nclass foo ( $config = undef) {\n}\nclass foo::config (\n  $config = hiera_hash('foo::config',$::foo::config)\n}\n{code}\n\nWhile this is doable it's a work around for a long time known limitation.\nCan we correct the limitation so it works within the parameterized class?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53933", "fixedVersions": [], "id": "53933", "issueType": "New Feature", "key": "HI-503", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "resolution": "Duplicate", "resolutionDate": "2016-03-15T09:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Automatic Parameter Lookup Multi Hierarchy", "timeSpent": "PT0S", "updated": "2016-03-15T10:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] I think this error message comes from Hiera. If so move this ticket to the HI project.\n\nAlso think we need to harmonize the error message with what the documentation calls the dot notation for navigation/drill down into values so users can find out more about the error. Ping [~accountid:623c08e1562ab90069f8aed4] - any suggestion on suitable terminology here?", "created": "2016-03-08T17:57:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "[~accountid:557058:8f1e0495-1d4a-4123-bbad-727b7f49f370] is the docs person assigned to this part of the land, so let's make sure she's involved. \n\nThis is the part of the hiera docs we're talking about right? http://docs.puppetlabs.com/hiera/3.0/lookup_types.html#lookup-keys It looks like we currently refer to key.subkey as a \"qualified key.\" I'm not married to that", "created": "2016-03-08T18:02:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Yeah, [~accountid:557058:8f1e0495-1d4a-4123-bbad-727b7f49f370] sorry - old habits die hard... when in loss of words, get Nick F...", "created": "2016-03-08T18:14:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Some thoughts...\n\nSo, the style in error messages and code is to refer to this as \"segmented key lookups\" - which is a term that is quite opaque, as it requires you to know exactly what the term means. Users may be familiar with \"segments\" as in the shape of namespaces, but that is not at all what is referenced here.\n\nI am thinking \"using . to drill down into the data\", or \"using . to navigate to a data element\", or something like that unless we find a good self descriptive term. I kind of like 'navigation' (technically I would refer to this as 'slicing', but that would be technobabble for most).", "created": "2016-03-08T18:22:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "So in terms of our users, and how the rest of our tools teach them to think about these kinds of things, I don't believe \"navigation\" is a great metaphor. If we can manage to stick to something very literal, like \"looking up hash or array elements,\" I think it will reduce the types of confusion available. \n\nThis might be the sort of case where we should remember that not everything needs a name", "created": "2016-03-08T18:31:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "prior art:\n\nhttp://docs.puppetlabs.com/puppet/latest/reference/lang_data_array.html#accessing-values\nhttp://docs.puppetlabs.com/puppet/4.3/reference/lang_data_hash.html#accessing-values", "created": "2016-03-08T18:32:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The dot notation is in facter too I believe - how is it talked about there. (I do agree that a term is not needed if you can say it clearly in plain english with a couple of words).", "created": "2016-03-08T18:41:00.000000"}, {"author": "557058:8f1e0495-1d4a-4123-bbad-727b7f49f370", "body": "It seems like the most common way we refer to something like this in the docs is \"accessing\" or to \"access\" hash/array data/keys/values. I agree literal description is the way to go.", "created": "2016-03-09T13:39:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "A descriptive sentence with \"accessing\" or \"access\" it is - and I think it is of value to mention the \".\" since that is what is causing this in the first place.\nThanks [~accountid:557058:8f1e0495-1d4a-4123-bbad-727b7f49f370].", "created": "2016-03-09T15:03:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged to stable at: ed22614", "created": "2016-04-10T16:16:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "validated using {{hiera}} at SHA {{ed226149182e81c0e8a5c908d48600dd4fd3ce0a}}", "created": "2016-04-11T14:46:00.000000"}], "components": [], "created": "2016-03-08T16:26:00.000000", "creator": "557058:ac3788df-2d4a-42ff-9dea-7c873aaf6e4d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@582f60ef"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyng6v:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Improves the wording of an error message."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_61005066_*|*_1_*:*_1_*:*_5472932_*|*_10007_*:*_1_*:*_26747303_*|*_3_*:*_1_*:*_2675068_*|*_5_*:*_1_*:*_1359439117_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_19992221_*|*_10006_*:*_1_*:*_2736135006_*|*_10005_*:*_1_*:*_75964555"}], "description": "When a Hiera key contains a dot in its name (which is illegal in Hiera 3, as mentioned in HI-485 and HI-496), puppet runs return an error similar to the following:\n\n\"Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Evaluation Error: Error while evaluating a Function Call, Resolution type :hash is illegal when doing segmented key lookups at /etc/puppetlabs/puppet/environments/../../../filename.pp:8:32 on node [node name]\"\n\nThis ticket is requesting better clarification to save time troubleshooting future issues. Perhaps inclusion of the erroneous key value in the error output.\n\nACCEPTANCE CRITERIA\n----\n* When an error occurs with a \"dotted\" (a.k.a segmented) key, the error message should show the failing part of the key\n* Error messages should use general terms like \"dotted key\" and \"access\" rather than mentioning 'segmented'\n\n(See merged PR for unit tests containing examples)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53711", "fixedVersions": ["HI 3.1.2"], "id": "53711", "issueType": "Improvement", "key": "HI-502", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:ac3788df-2d4a-42ff-9dea-7c873aaf6e4d", "resolution": "Fixed", "resolutionDate": "2016-04-11T14:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Improved error reporting for \"segmented key lookup\" failure", "timeSpent": "PT0S", "updated": "2016-04-27T08:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:68216498-c6bf-4e8f-92c1-ac84887b7c02", "body": "Either use a new enough version of facter and puppet so that the facts are not stringified anymore, or use a splittable representation of your host list (as string and use https://docs.puppet.com/puppet/latest/reference/function.html#split in the hiera definition).\n\nPutting that into the haproxy module doesn't seem to be appropriate\n", "created": "2016-04-19T10:15:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:36e8398c-c253-406d-b748-c2dc9a1718fb", "body": "[~accountid:557058:68216498-c6bf-4e8f-92c1-ac84887b7c02] While I agree that the haproxy module doesn't seem like the most fortunate place for a change like this, I don't really know how could you do it differently. Let me comment on your suggestions:\n\n* _\"Either use a new enough version of facter and puppet so that the facts are not stringified anymore\"_ - my facts already aren't being stringified, since I used the puppet config option {{stringify_facts=false}}. The facter isn't the problem, the problem is that hiera stringifies the array fact when used in an interpolation token. As taken from the note on the newest hiera, 3.1: \n{code}Hiera can interpolate values of any of Puppet\u2019s data types, but the value will be converted to a string. \nFor arrays and hashes, this won\u2019t fully match Puppet\u2019s rules for interpolating non-string values, but it will be close. {code}\n* \"_or use a splittable representation of your host list (as string and use https://docs.puppet.com/puppet/latest/reference/function.html#split in the hiera definition).\"_ - how am I supposed to use that function from within hiera? Hiera only allows four functions: hiera(), scope(), alias() and literal().\n\nTherefore my usecase remains unsolved. Can the issue be reopened and some more though put into it?", "created": "2016-04-20T18:13:00.000000"}, {"author": "557058:68216498-c6bf-4e8f-92c1-ac84887b7c02", "body": "Former user when you put it that way, I believe the proper fix would be to enhance hiera so that it can process structured facts properly. I forwarded your feature request to the appropriate team.", "created": "2016-04-21T07:11:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hiera simply does not have the required concepts that would make it possible to use all kinds of data types. Interpolation is what it is in and the result is a string by definition. Other compositional mechanisms would be required and they are very hard to express in json/yaml where all data types are already spoken for. I.e this cannot be achieved in a backwards compatible way, but can be implemented as a backend that interprets the json/yaml data differently.", "created": "2016-04-21T09:55:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:36e8398c-c253-406d-b748-c2dc9a1718fb", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] thanks for the comment. You said that string interpolation results in a string by definition, but the alias() function returns something that's possibly not a string. I don't know the internals of hiera, so maybe this won't be applicable here, but is there any reason additional string manipulation functions couldn't be introduced in hiera? I'm thinking functions that don't necessarily output a string.\n\nThe split function that David mentioned would be a nice solution, if only that function was available in hiera. Additional bonus is that this would be backwards compatible as far as I'm aware.", "created": "2016-04-22T03:55:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There are lots of things that users want to be able to do in data", "created": "2016-04-22T09:56:00.000000"}], "components": ["UX"], "created": "2016-03-07T09:28:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:36e8398c-c253-406d-b748-c2dc9a1718fb", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@17446c60"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz4x1b:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Apr/16"}], "description": "Let's say, that I want to have my entire haproxy config in hiera. In the puppet manifest I would do something like:\n\n{code}\ncreate_resources(haproxy::balancermember, hiera_hash('profile::haproxy::balancermembers'))\ncreate_resources(haproxy::backend, hiera_hash('profile::haproxy::backends'), { collect_exported => false })\ncreate_resources(haproxy::frontend, hiera_hash('profile::haproxy::frontends'))\n{code}\n\nNow let's say that I have a variable, which holds an array of my backend servers. In my case it is held in a structured custom fact called {{frontend_nodes}} and it is an array holding values {{frontend-1}} and {{frontend-2}}\n\nWhat I would want to do, is to specify my balancemember hash in hiera as follows:\n\n{code}\nprofile::haproxy::balancermembers:\n  internetedge-balancermember00:\n    listening_service: internetedge-backend00\n    server_names: %{::frontend_nodes}\n    ipaddresses: %{::frontend_nodes}\n    options:\n      - check\n      - inter 12s\n    ports: \"%{hiera('frontend_port')}\"\n{code}\n\nNow the problem is that according to the Notes in https://docs.puppetlabs.com/hiera/3.0/variables.html#interpolation-tokens even if my variable `frontend_nodes` is originally an array, it will get stringified when interpolated in hiera. This gets then inserted into haproxy config as a single server with name {{\\[frontend-1, frontend-2\\]:port}} (which of course throws an error), instead of two servers, {{frontend-1:port}} and {{frontend-2:port}}.\n\nWhat I would want, is if a value for parameter {{server_names}} or {{ipaddresses}} is a string of format {{\\[val1, val2, ...\\]}} it should get converted into an array by the haproxy module.\n\nI don't believe there's a workaround for this issue, but I'd like to be proven wrong.\n\nPS: There might be more parameters that would benefit from this behaviour, these are just the ones I encountered", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53681", "fixedVersions": [], "id": "53681", "issueType": "New Feature", "key": "HI-511", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:36e8398c-c253-406d-b748-c2dc9a1718fb", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "ability to work with complex datatypes from facter", "timeSpent": "PT0S", "updated": "2016-09-07T16:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "623c0987a2f6400069eb7695", "body": "I just tested, and this also affects Hiera version *3.0.6* as well.", "created": "2016-03-02T17:14:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Ping [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]. ", "created": "2016-03-02T17:41:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Duplicate of HI-494 (Fixed in Hiera 3.1.0, to be released with Puppet 4.4.0).", "created": "2016-03-02T18:29:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Thanks [~accountid:623c0987a2f6400069eb7695] for a very detailed error report.", "created": "2016-03-02T18:30:00.000000"}, {"author": "623c0987a2f6400069eb7695", "body": "I just looked at HI-494 and this does not appear to be the same issue.  That one is talking about a specific \\%\\{\\} interpolation whose function changed.  I'm talking about a problem with %\\{literal()\\} causing puppet catalog failures.", "created": "2016-03-02T19:50:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I should have linked HI-497 which is also a duplicate of HI-494.\n\nHI-494 broke the work around that is reported in HI-497.\n\nThe real issue here is that hiera interpolation has been quite broken in this respect for a long time, people instead use a work around, With all the work arounds being used in practice it is close to impossible to clean up bugs without causing silent breaking behavior.\n\nWill lookup some instruction how to work around the problem.", "created": "2016-03-02T20:09:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "HI-127 is also related. It shows the other workaround .- that is fixed in Hiera 3.1.0.\n\nWorkaround before literal(%) was added:\n{code}\n\"%%{}\"\n{code}\n\nThis workaround was undocumented, untested and it broke in some releases. It is now supported (fix in HI-494) as it ended up being what everyone had to use.\n\nWhen it was broken, users found that %%{::} worked (out of chance). Then it broke because it was never intended to work.\n\nHI-494 makes both of those variants work.\n\nTowards the end of HI-127 (long after ticket was closed, there is a report of a problem that looks like the one you are reporting.\n\nSome people have gone so far as to use a rewrite backend (see original Redmine ticket linked from HI-127).\n\nIf you have the time, it would be great if you could test if hiera head of master branch works for you, or if you see the same problem.\n\nWe are very close to releasing Hiera 3.1.0 and if it does not work for you, then maybe the %%{} or %%{::} workaround will work until a better solution is found.\n\nIf you are on 4.x with support for lookup, you could try if it works there. The lookup functionality is a rewrite of hiera (among other things) and it resides in puppet. Longer term it will replace the hiera project (data is compatible with hiera 3.x). \n\nI am reopening this as it is uncertain what the state of this particular problem is.\n", "created": "2016-03-02T20:27:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I also added this to our \"Language Triage\" which means that it is on our radar screen, gets talked about and prioritized.", "created": "2016-03-02T20:32:00.000000"}, {"author": "623c0987a2f6400069eb7695", "body": "I just tested against Hiera 3.0.6, and using %%\\{::\\} works:\n{noformat}\n# grep ^test /etc/puppetlabs/code/environments/testing/hieradata/common.yaml\ntest_01_works: \"%%{::}A\"\ntest_02_works: \"%%{::}%{literal('B')}\"\ntest_03_works: [ \"%%{::}C\" , \"%%{::}D\" ]\ntest_04_works: \"%{hiera('test_01_works')}%{hiera('test_02_works')}\"\ntest_05_fails: \"%{hiera('test_01_works')}%{hiera('test_01_works')}\"\ntest_06_fails: \"%%{::}E%%{::}\"\ntest_07_fails: \"%{hiera('test_03_works')}\"\ntest_08_fails: \"%{alias('test_03_works')}\"\n{noformat}\n{noformat}\npuppet apply -t --noop --environment=testing -e 'warning(hiera(\"test_01_works\"))' | egrep \"Warning|Error\"\nWarning: Scope(Class[main]): %A\npuppet apply -t --noop --environment=testing -e 'warning(hiera(\"test_02_works\"))' | egrep \"Warning|Error\"\nWarning: Scope(Class[main]): %B\npuppet apply -t --noop --environment=testing -e 'warning(hiera(\"test_03_works\"))' | egrep \"Warning|Error\"\nWarning: Scope(Class[main]): [%C, %D]\npuppet apply -t --noop --environment=testing -e 'warning(hiera(\"test_04_works\"))' | egrep \"Warning|Error\"\nWarning: Scope(Class[main]): %A%B\npuppet apply -t --noop --environment=testing -e 'warning(hiera(\"test_05_fails\"))' | egrep \"Warning|Error\"\nWarning: Scope(Class[main]): %A%A\npuppet apply -t --noop --environment=testing -e 'warning(hiera(\"test_06_fails\"))' | egrep \"Warning|Error\"\nWarning: Scope(Class[main]): %E%\npuppet apply -t --noop --environment=testing -e 'warning(hiera(\"test_07_fails\"))' | egrep \"Warning|Error\"\nWarning: Scope(Class[main]): [\"%C\", \"%D\"]\npuppet apply -t --noop --environment=testing -e 'warning(hiera(\"test_08_fails\"))' | egrep \"Warning|Error\"\nWarning: Scope(Class[main]): [%C, %D]\n{noformat}\nI'm not sure how to test against the Hiera git repo when I'm  using the AIO package.\n- Johnson", "created": "2016-03-04T23:35:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Thanks for confirming that the workaround works. Glad it works for you even if it is kind of ugly.\n\nWhat I do when I want to test one part is to move the directory to a backup", "created": "2016-03-05T06:47:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Is there anything left to do to resolve this issue?", "created": "2016-03-16T03:35:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Was waiting on [~accountid:623c0987a2f6400069eb7695] to confirm (if he had the chance). Will resolve this instead, and let [~accountid:623c0987a2f6400069eb7695] reopen if problem is reproducible on latest.", "created": "2016-03-16T05:30:00.000000"}], "components": ["UX"], "created": "2016-03-02T12:43:00.000000", "creator": "623c0987a2f6400069eb7695", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@118c06c8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz4urb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_20796001_*|*_4_*:*_1_*:*_1145251359_*|*_6_*:*_2_*:*_7090749_*|*_10004_*:*_1_*:*_6912063"}], "description": "Multiple +identical+ calls to the Hiera lookup function {{%{literal()\\}}} in the same Hiera data key cause an error.  This includes when the {{%{hiera()\\}}} or {{%{alias()\\}}} lookup functions are called and the included keys contain identical {{%{literal()\\}}} calls.  However, it +works+ when using {{%{hiera()\\}}} to include two +different+ Hiera keys that contain identical {{%{literal()\\}}} calls.\n\n{noformat}\n# grep test_ /etc/puppetlabs/code/hieradata/hosts/`hostname`.yaml\ntest_01_works: \"%{literal('%')}A\"\ntest_02_works: \"%{literal('%')}%{literal('B')}\"\ntest_03_works: [ \"%{literal('%')}C\" , \"%{literal('%')}D\" ]\ntest_04_works: \"%{hiera('test_01_works')}%{hiera('test_02_works')}\"\ntest_05_fails: \"%{hiera('test_01_works')}%{hiera('test_01_works')}\"\ntest_06_fails: \"%{literal('%')}E%{literal('%')}\"\ntest_07_fails: \"%{hiera('test_03_works')}\"\ntest_08_fails: \"%{alias('test_03_works')}\"\n{noformat}{noformat}\n# puppet apply -t --noop -e 'warning(hiera(\"test_01_works\"))' | egrep 'Warning|Error'\nWarning: Scope(Class[main]): %A\n\n# puppet apply -t --noop -e 'warning(hiera(\"test_02_works\"))' | egrep 'Warning|Error'\nWarning: Scope(Class[main]): %B\n\n# puppet apply -t --noop -e 'warning(hiera(\"test_03_works\"))' | egrep 'Warning|Error'\nWarning: Scope(Class[main]): [%C, %D]\n\n# puppet apply -t --noop -e 'warning(hiera(\"test_04_works\"))' | egrep 'Warning|Error'\nWarning: Scope(Class[main]): %A%B\n\n# puppet apply -t --noop -e 'warning(hiera(\"test_05_fails\"))' | egrep 'Warning|Error'\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [hiera('test_01_works')]  at line 1:9 on node puppet01-ord12.ord12.responsys.com\n\n# puppet apply -t --noop -e 'warning(hiera(\"test_06_fails\"))' | egrep 'Warning|Error'\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [literal('%')]  at line 1:9 on node puppet01-ord12.ord12.responsys.com\n\n# puppet apply -t --noop -e 'warning(hiera(\"test_07_fails\"))' | egrep 'Warning|Error'\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [hiera('test_03_works'), literal('%')]  at line 1:9 on node puppet01-ord12.ord12.responsys.com\n\n# puppet apply -t --noop -e 'warning(hiera(\"test_08_fails\"))' | egrep 'Warning|Error'\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [alias('test_03_works'), literal('%')]  at line 1:9 on node puppet01-ord12.ord12.responsys.com\n{noformat}\n\nGiven that the only stated valid parameter to {{%{literal()\\}}} in the Hiera documentation is {{'%'}}, this means it is nearly impossible _(and certainly difficult)_ to generically include multiple {{%}} characters in a single Hiera key.\n\nFor example, if you need four {{%}} signs in a single data value:\n\n{noformat}\np1: \"%{literal('%')}\"\np2: \"%{literal('%')}\"\np3: \"%{literal('%')}\"\np4: \"%{literal('%')}\"\n\napache::vhost::standard_rewrites:\n    -   comment: rewrite to canonical URL\n        rewrite_cond:\n            - \"%{hiera('p1')}{HTTP_HOST}   !^www\\\\.example\\\\.com [NC]\"\n            - \"%{hiera('p2')}{HTTP_HOST}   !^$\"\n            - \"%{hiera('p3')}{SERVER_PORT} !^80$\"\n        rewrite_rule:\n            - \"^/(.*)         http://www.example.com:%{hiera('p4')}{SERVER_PORT}/$1 [L,R]\"\n\napache::vhost:\n    foo.example.com:\n        port: '80'\n        docroot: '/var/www'\n        rewrites: \"%{alias('apache::vhost::standard_rewrites')}\"\n{noformat}\n\nThe only way you can access {{apache::vhost}} in this example is if each of the {{%}} signs in the {{apache::vhost::standard_rewrites}} data value come from +different+ Hiera keys that contain a {{%{literal('%')\\}}}:\n\n{noformat}\n# puppet apply -t --noop -e 'warning(hiera(\"apache::vhost\"))' | egrep 'Error|Warning'\nWarning: Scope(Class[main]): {foo.example.com => {port => 80, docroot => /var/www, rewrites => [{comment => rewrite to canonical URL, rewrite_cond => [%{HTTP_HOST}   !^www\\.example\\.com [NC], %{HTTP_HOST}   !^$, %{SERVER_PORT} !^80$], rewrite_rule => [^/(.*)         http://www.example.com:%{SERVER_PORT}/$1 [L,R]]}]}}\n{noformat}\n\nIf, instead, you use the obvious (and documented) solution...\n{noformat}\napache::vhost::standard_rewrites:\n    -   comment: rewrite to canonical URL\n        rewrite_cond:\n            - \"%{literal('%')}{HTTP_HOST}   !^www\\\\.example\\\\.com [NC]\"\n            - \"%{literal('%')}{HTTP_HOST}   !^$\"\n            - \"%{literal('%')}{SERVER_PORT} !^80$\"\n        rewrite_rule:\n            - \"^/(.*)         http://www.example.com:%{literal('%')}{SERVER_PORT}/$1 [L,R]\"\n\napache::vhost:\n    foo.example.com:\n        port: '80'\n        docroot: '/var/www'\n        rewrites: \"%{alias('apache::vhost::standard_rewrites')}\"\n{noformat}\nYou get this error:\n{noformat}\n# puppet apply -t --noop -e 'warning(hiera(\"apache::vhost\"))' | egrep 'Error|Warning'\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [alias('apache::vhost::standard_rewrites'), literal('%')]  at line 1:9 on node puppet01-ord12.ord12.responsys.com\n{noformat}\n\nEven if you use a single level of redirection...\n{noformat}\npercent: \"%{literal('%')}\"\n\napache::vhost::standard_rewrites:\n    -   comment: rewrite to canonical URL\n        rewrite_cond:\n            - \"%{hiera('percent')}{HTTP_HOST}   !^www\\\\.example\\\\.com [NC]\"\n            - \"%{hiera('percent')}{HTTP_HOST}   !^$\"\n            - \"%{hiera('percent')}{SERVER_PORT} !^80$\"\n        rewrite_rule:\n            - \"^/(.*)         http://www.example.com:%{hiera('percent')}{SERVER_PORT}/$1 [L,R]\"\n\napache::vhost:\n    foo.example.com:\n        port: '80'\n        docroot: '/var/www'\n        rewrites: \"%{alias('apache::vhost::standard_rewrites')}\"\n{noformat}\n\nYou still get an error:\n{noformat}\n# puppet apply -t --noop -e 'warning(hiera(\"apache::vhost\"))' | egrep 'Error|Warning'\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [alias('apache::vhost::standard_rewrites'), hiera('percent')]  at line 1:9 on node puppet01-ord12.ord12.responsys.com\n{noformat}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53570", "fixedVersions": [], "id": "53570", "issueType": "Bug", "key": "HI-501", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c0987a2f6400069eb7695", "resolution": "Cannot Reproduce", "resolutionDate": "2016-03-16T05:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "literal interpolation function can appear only once in any data value", "timeSpent": "PT0S", "updated": "2017-03-01T17:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:15c980c1-5378-4d9c-8137-978a6fb53b5d", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Former user Can you describe in more detail what you defined, what you expected and what you got. It is hard to understand your description of the problem. What we need is to be able to reproduce the problem. Can you help us with that?\n\nI am keeping this ticket in the Hiera project until we know what the problem really is. When using lookup there are two parts in play", "created": "2016-02-26T06:47:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Obviously YAML files must be valid YAML. What is valid is unfortunately decided by the YAML implementation, and it may vary between Ruby versions.", "created": "2016-02-26T06:48:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:15c980c1-5378-4d9c-8137-978a6fb53b5d", "body": "I'll try to be more explicit then.\n\nI'm using hiera format 4 with code like this:\n\n{code:yaml}\n---\nversion: 4\ndatadir: data\nhierarchy:\n  - name: \"Nodes\"\n    backend: yaml\n    path: \"node.yaml\"\n  - name: \"common\"\n    backend: yaml\n    path: \"common.yaml\"\n{code}\n\nNode.yaml look like :\n\n{code:yaml}\nfirewall::fw_rules:\n  '100 - TCP 3000 puppet':\n    'proto': 'tcp'\n    'dport': 3000\n    'action': 'accept'\n  '101 - TCP 443 puppet web interface':\n    'proto': 'tcp'\n    'dport': 443\n    'action': 'accept'\n{code}\n\nand common.yaml :\n\n{code:java}\nfirewall::fw_rules:\n  '200 - accept SSH':\n    'proto': 'tcp'\n    'dport': 22\n    'action': 'accept'\n{code}\n\nboth without the '---' at the begining at the file\n\nWhen I run the command : \n\n{code:yaml}\npuppet lookup firewall::fw_rules --merge deep\n{code}\n\nI receive : \n\n\n{code:yaml}\n---\n '100 - TCP 3000 puppet':\n    'proto': 'tcp'\n    'dport': 3000\n    'action': 'accept'\n  '101 - TCP 443 puppet web interface':\n    'proto': 'tcp'\n    'dport': 443\n    'action': 'accept'\n  '200 - accept SSH':\n    'proto': 'tcp'\n    'dport': 22\n    'action': 'accept'\n{code}\n So exactly what I wanted.\n\nBut when I use a lookup on my module, I only get the last part (common.yaml)\n\nI look for hours about this problem, it was just because the yaml file is not very conform.\n\nSo I was just asking for some kind of coherence between the 2 way of getting the data.\n\n", "created": "2016-02-26T07:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Thanks, that took this a bit further...\n\nWhat do you mean by \"when I use a lookup on my module\"? I do understand the config you have and the command that worked. I need to understand what your configuration was / what the files looked like when it did not work, what you did, and what you expected the outcome to be.", "created": "2016-02-26T07:57:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:15c980c1-5378-4d9c-8137-978a6fb53b5d", "body": "Here my module (init.pp)\n{code:puppet}\nclass firewall (\n  $fw_rules\n) {\n  $fw_rules.each |String $name, Hash $rule| {\n        create_resources('firewalld',{$name => $rule})\n    }\n}\n{code}\n\nConfiguring to use data_provider hiera (in the metadata.json)\nI even try using the lookup function \n\n(something like that, and with the hiera function instead of lookup)\n{code:java}\nclass firewall (\n  ) {\n  $fw_rules = lookup(firewall::fw_rules, Hash, deep)\n  $fw_rules.each |String $name, Hash $rule| {\n        create_resources('firewalld',{$name => $rule})\n    }\n}\n{code}\n\nWhat I did :\n\nI just add '---' at the begging of all my yaml file, and it work fine.\n\nWhat I expected : \n\nHave the same answer from both 'puppet lookup ...' and data_provider or lookup function\n", "created": "2016-02-26T08:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The {{hiera_xxx}} functions do not work with data in environments and modules. They never will.\nThe intent is to use automatic data binding, using lookup of exactly the same key as the automatic data binding performs is a no-op (meaningless) as if the key exists it is set and the default value expression (calling the lookup) is never evaluated. Using a lookup in the default vallue expression is only meaningful if you are looking up a different key.\n\nI think you would benefit from discussion how to do these things with members of the community, on IRC or via the mailinglist.\n\nNevertheless, there seems to be something that is different depending on if yaml files are correct with '----' tag or not. I am not sure I understood exactly how you derived at this difference.\n\nPing [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] any thoughts on this?\n", "created": "2016-02-26T08:59:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed as incomplete as there has been no new information that makes this actionable. please reopen if the problem is still present in latest version.", "created": "2017-02-07T07:16:00.000000"}], "components": [], "created": "2016-02-26T03:17:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:15c980c1-5378-4d9c-8137-978a6fb53b5d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@125b290a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz4r6v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12433695_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_29982724233"}], "description": "My YAML file missed the '---' at the beginning.\n\nWhen I ran 'puppet lookup my_var' I was getting the first encountered value, but in my module, I was getting only the last one (common.yaml). \n\nAfter adding those '---', I was getting the first encountered value. \n\nThose 2 different behavior seems incoherent to me.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54008", "fixedVersions": [], "id": "54008", "issueType": "Improvement", "key": "HI-500", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:15c980c1-5378-4d9c-8137-978a6fb53b5d", "resolution": "Incomplete", "resolutionDate": "2017-02-07T07:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Incoherence in YAML parser", "timeSpent": "PT0S", "updated": "2017-03-01T17:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "created": "2016-03-07T13:29:00.000000", "name": "hi-499-manifest", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14179"}], "comments": [{"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "Comparing old master build sha (492f036063c0f2627bf001bbfc72b914d627b06c) with\na fixed build sha (f02899ae2ff66cea528d021ccdcd4adcf82b9ed7).\n\nAfter applying the attached manifest, Hiera is configured with two backend: yaml and eyaml.  The eyaml entry in hiera.yaml refers to a non-existent data directory.  That backend will fail to load.\n\nGiven the command\n{code}\nhiera global_key\n{code}\n\nThe old Hiera (master build sha 492f036063c0f2627bf001bbfc72b914d627b06c before fix applied), would issue a warning and continue the lookup (and find the key in the other backend), ending with an exit code of 0.\n{code}\n[root@j1bkrlsohtgb89g code]# hiera global_key\nWARN: 2016-03-07 12:18:36 -0800: Cannot load backend yaml2: cannot load such file -- hiera/backend/yaml2_backend\nglobal-hiera provided value for key\n[root@j1bkrlsohtgb89g code]# echo $?\n0\n[root@j1bkrlsohtgb89g code]#\n{code}\nThe fixed hiera produces an actual error (not just a warning), does not produce a value and exits with status = 1.\n{code}\n[root@u0d0jgywxsg5dc5 ~]# hiera global_key\nFailed to start Hiera: RuntimeError: Cannot load backend yaml2: cannot load such file -- hiera/backend/yaml2_backend\n[root@u0d0jgywxsg5dc5 ~]# echo $?\n1\n[root@u0d0jgywxsg5dc5 ~]#\n{code}\nBug fixed.", "created": "2016-03-07T13:28:00.000000"}], "components": [], "created": "2016-02-24T16:48:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@22f7d7c5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz4q4n:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "If hiera could not load a backend it would skip it with a warning. This can have serious implications on the configuration as the compilation will potentially act on data where a large portion of the data is missing."}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Found"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "PE reported issue - this is a serious problem and a blocker for the release."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_11197031_*|*_1_*:*_1_*:*_129693_*|*_10007_*:*_2_*:*_69245745_*|*_3_*:*_1_*:*_11052508_*|*_5_*:*_1_*:*_854676725_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_933214289"}], "description": "If hiera cannot load a backend, it logs a warning and continues.\n\nThis is reckless behavior and can turn a users complete fleet of managed servers into pumpinks. \n\nHiera must error in this case, and puppet should fail a compilation.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53839", "fixedVersions": ["HI 3.1.0"], "id": "53839", "issueType": "Bug", "key": "HI-499", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Blocker", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Fixed", "resolutionDate": "2016-03-07T13:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera must error if it cannot load a backend.", "timeSpent": "PT0S", "updated": "2016-03-17T11:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Duplicate of HI-494", "created": "2016-02-03T15:49:00.000000"}], "components": [], "created": "2016-02-03T02:51:00.000000", "creator": "70121:59c54d3b-1132-4180-b6f5-f673c4903d3d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@330dc088"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz49hr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_46688563_*|*_6_*:*_1_*:*_0"}], "description": "When literal('%') is used multiple times, it breaks with the following errors:\n\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [literal('%')] at ..\n\nAlso, in the latest hiera release, the %%{} workaround no longer works.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53569", "fixedVersions": [], "id": "53569", "issueType": "Bug", "key": "HI-497", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Blocker", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:59c54d3b-1132-4180-b6f5-f673c4903d3d", "resolution": "Duplicate", "resolutionDate": "2016-02-03T15:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera literal broken when used multiple times", "timeSpent": "PT0S", "updated": "2016-03-02T20:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I understand the pain but that will be very difficult to achieve as the defaults are using subkey lookup to get into trusted facts.\nNote that '.' in keys were never intended to be supported, they just happened to work.\n\nSince this has been out now for quite some time, and there has only been one earlier issue-report where this was troublesome enough to file a ticket which we closed as Won't Fix, I am also going to close this.\n\nWhat you can do, if you are on one of the latest versions of puppet is to write a wrapper hiera backend. We now support that a hiera backend can be responsible for interpretation of subkeys. It needs to have a method that declares that it wants to do subkey handling on its own, and then the keys will be passed verbatim to the backend (instead of now, being interpreted by hiera itself).\n\nOnce you have changed all of the keys with a period in them, you can change back to the standard backend.\nIf you are interested in doing this, I can point you to the ticket that describes how it works.", "created": "2016-01-28T09:35:00.000000"}, {"author": "557058:83aca1cb-a848-4c88-b430-af2b8e6036c5", "body": "Please link this jira to the original request to see how the bacjend would look like.", "created": "2016-01-28T13:52:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The feature to let a backend take over is HI-471.\n\nThere is no example of a wrapping backend related to that. One other users created a wrapping backend for another purpose IIRC. Will try to find that ticket as well.", "created": "2016-01-28T14:49:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The ticket HI-421 is about a \"whitelist filter\". That ended with the user writing a hiera-wrapper backend. You can find that here: https://github.com/senax/hiera-wrapper  (that is the white list wrapper), which you can probably use as a model for how to do what you want.", "created": "2016-01-28T14:54:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I have not looked at the implementation of the hiera-wrapper, but the user reported it as working for them.", "created": "2016-01-28T14:56:00.000000"}, {"author": "557058:c1aa8056-6473-479b-bb79-3ce6e45bce2f", "body": "To add a related perspective: this also hits those who use the [hiera-file|https://github.com/adrienthebo/hiera-file backend]. We don't have dots in any of our normal Hiera lookup keys but the content of files in the hiera-file backend is looked up using the file name as key, and that will almost invariably and naturally contain at least one dot. For example:\n\n{code}\nssldata/projects.d/www.example.com.crt.pem\nssldata/mcollective.d/mcollective-servers.crt.pem\nssldata/mcollective.d/mcollective-servers.key.pem\n{code}\n\nLooking up {{mcollective-servers.crt.pem}} with Hiera returns the contents of the file {{ssldata/mcollective.d/mcollective-servers.crt.pem}} which we then pass to {{content}} of a File resource that manages that certificate on the target systems.\n\nTo make this work with Hiera 2/3 we have to rename all files so something like this:\n\n{code}\nssldata/projects.d/www_example_com_crt_pem\nssldata/mcollective.d/mcollective-servers_crt_pem\nssldata/mcollective.d/mcollective-servers_key_pem\n{code}\n\nNot exactly a showstopper but a PITA and somewhat unnatural for files.", "created": "2016-02-09T10:12:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Please file a ticket for hiera-file backend. It should simply use the option to receive raw keys. It is dead simple to add that.", "created": "2016-02-09T12:57:00.000000"}, {"author": "557058:c1aa8056-6473-479b-bb79-3ce6e45bce2f", "body": "Will do, thanks for the pointer!", "created": "2016-02-09T14:43:00.000000"}, {"author": "557058:83aca1cb-a848-4c88-b430-af2b8e6036c5", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Using a custom backend helps disabling subkey lookup. \nGot one question though - HI-471 doesn't seem to be integrated in the latest Puppet4 puppet-agent package (1.3.5).\n{code:ruby}\nrequire \"hiera/backend/yaml_backend\"\nclass Hiera\n  module Backend\n    class Yaml_nosubkeys_backend < Yaml_backend\n      # When hiera backends define lookup_with_segments method\n      # subkey lookup is delegated to it.\n      # See HI-471 - https://github.com/puppetlabs/hiera/commit/5b4b8f\n      # We use this to disable subkey lookup (and thus allow dot separated keys in yaml files)\n      def lookup_with_segments(segments, scope, order_override, resolution_type, context)\n          key = segments.join('.')\n          return lookup(key, scope, order_override, resolution_type, context)\n      end\n    end\n  end\nend\n{code}", "created": "2016-02-20T14:03:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] - if not already on the radar", "created": "2016-02-20T16:46:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Yes, we intend to release hiera 3.1.0 (including HI-471) with puppet 4.4.0 in puppet-agent 1.4.0. Probably not this week, but next. \n", "created": "2016-02-22T09:08:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:6276d641-e632-46b8-833c-9c428719ae09", "body": "Just to add another data point, this bit me, too. We had some top-level hiera keys (in the YAML backend) that used domain names. I was able to migrate away from them, but it did take quite a bit of looking just to figure out what the problem was.", "created": "2016-03-08T17:31:00.000000"}, {"author": "557058:83aca1cb-a848-4c88-b430-af2b8e6036c5", "body": "HI-504 solves this issue \\[_henrik_: by making it possible to quote parts or the entire key].", "created": "2016-03-17T16:25:00.000000"}], "components": [], "created": "2016-01-28T08:19:00.000000", "creator": "557058:83aca1cb-a848-4c88-b430-af2b8e6036c5", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3736525"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz4653:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4617165_*|*_6_*:*_1_*:*_0"}], "description": "Hiera 3 introduced support for subkeys lookup:\n{noformat}\nQualified keys are composed of a top-level lookup key along with any number of additional subkeys, separated by dots.\n{noformat}\nWhile this is a cool feature it is breaking existing hiera configuration where {{.}} was used in the yaml key, e.g.\n{noformat}\nmy.key.with.dot: \"text\"\n{noformat}\nIt is required for users like us to have a way to disable the subkey lookup until the configurations are migration", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53636", "fixedVersions": [], "id": "53636", "issueType": "Improvement", "key": "HI-496", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:83aca1cb-a848-4c88-b430-af2b8e6036c5", "resolution": "Won't Do", "resolutionDate": "2016-01-28T09:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera subkeys lookup should be configurable", "timeSpent": "PT0S", "updated": "2016-03-18T12:06:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:557058:e2510a0a-1767-444f-be52-bae9bb15d3f6] can we close this ticket?", "created": "2016-02-17T16:56:00.000000"}, {"author": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "body": "Fix no longer needed since PA-162 is resolved.", "created": "2016-02-18T19:44:00.000000"}], "components": [], "created": "2016-01-27T17:12:00.000000", "creator": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@488ca512"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz45yv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_283510_*|*_10007_*:*_1_*:*_1909670099_*|*_6_*:*_1_*:*_0"}], "description": "We need a small change in the setup script in order to run the accpetance tests on Cisco-wrlinux-5", "environment": "AIO Puppet Agent CI Pipeline", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53838", "fixedVersions": [], "id": "53838", "issueType": "Task", "key": "HI-495", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "resolution": "Won't Fix", "resolutionDate": "2016-02-18T19:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update Hiera Acceptance tests for cisco-5", "timeSpent": "PT0S", "updated": "2016-02-18T19:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is bug, the output of the scope array is unintentional.", "created": "2016-01-21T17:49:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Thanks for the update. Is the {{::}} workaround still intended to work after the bug is fixed? ", "created": "2016-01-21T18:26:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The {{::}} is unintentional. I think that should be an error since it is an illegal name, but I think we need to preserve that \"bug\" in order to not screw up peoples configurations.  ", "created": "2016-01-21T18:50:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "That's kind of what I was asking :) Good to know I won't be surprised at least.", "created": "2016-01-21T19:00:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Changed to be included in Hiera 3.0.7 as it is too late to get this into 3.0.6.", "created": "2016-01-22T10:01:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b] great if you could take the PR for a spin to make sure it works for your case (and that I included your case in the test).", "created": "2016-02-03T16:57:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Do we have this issue in the new Hiera data providers as well?", "created": "2016-02-04T14:53:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "I'll try and give this a shot tomorrow, it just isn't happening tonight. Thanks!", "created": "2016-02-04T15:14:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] we may have an issue there as well. I started on a port of the tests from hiera - but I could not figure out all of the dependencies. I basically wanted to only unit test the hiera_interpolator. I got this far: https://gist.github.com/hlindberg/25d07ea653650f193e55\n\nDo you want to take it and make it run? \n", "created": "2016-02-04T20:12:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Merged to stable at [a2d471f|https://github.com/puppetlabs/hiera/commit/a2d471f6eb7de6a30c288439d767eed583233c52]", "created": "2016-02-05T03:14:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Merged to master at [180e948|https://github.com/puppetlabs/hiera/commit/180e948fcd18eea0f41b23aa53c6a7c085edca69]", "created": "2016-02-05T03:16:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Looking at the tests I found one minor issue in the wording after I merged.\n\nThere's a test stating:\n\"the empty interpolation can be escaped\"\n\nIt tests the string\n{code}\nescaped_empty_interpolation: 'clown%%{}{shoe}s'\n{code}\nand expects\n{code}\nescaped_empty_interpolation: 'clown%{shoe}s'\n{code}\n\nSince Hiera doesn't do escapes ('%%' does not become '%'), what actually happens is that '%{}' is transformed into the empty string ''. The result is a string that seems to contain an unresolved interpolated expression. A more correct wording of the test might be:\n\n\"the empty interpolation can be used as an escape mechanism\"\n", "created": "2016-02-05T04:08:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I added PUP-5824 to capture this in the Hiera data provider.", "created": "2016-02-05T04:34:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] if you want to update the test title, go ahead and do a (maint) commit directly - I can live with the title as it is...", "created": "2016-02-05T11:30:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Took the PR for a spin and it does indeed work. Thanks!\n{code}\n[rnelson0@build03 hiera:(detached from a2d471f)]$ cat /etc/puppetlabs/code/environments/production/hieradata/common.yaml\n---\nkey: value\nhiera::hierarchy:\n  - 'clientcert/%%{}{clientcert}'\n  - 'puppet_role/%%{}{puppet_role}'\n  - 'global'\n\n[rnelson0@build03 hiera:(detached from a2d471f)]$ hiera hiera::hierarchy environment=production\n[\"clientcert/%{\\\"environment\\\"=>\\\"production\\\"}{clientcert}\",\n \"puppet_role/%{\\\"environment\\\"=>\\\"production\\\"}{puppet_role}\",\n \"global\"]\n[rnelson0@build03 hiera:(detached from a2d471f)]$ be hiera hiera::hierarchy environment=production\n[\"clientcert/%{clientcert}\", \"puppet_role/%{puppet_role}\", \"global\"]\n{code}", "created": "2016-02-06T17:57:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "I Compared the last stable sha before the fix (2c05dd39096703b9e9868e65a962ea2fa431f09a) with the head of the stable branch.\n\nI used this hiera configration:\n/etc/puppetlabs/code/hiera.yaml:\n{code}\n---\n  :backends:\n    - \"yaml\"\n  :logger: \"console\"\n  :hierarchy:\n    - \"global\"\n\n  :yaml:\n    :datadir: \"/etc/puppetlabs/code/hieradata\"\n{code}\n/etc/puppetlabs/code/hieradata/global.yaml:\n{code}\n---\n  mykey: 'hello from mykey'\n  mykey2: 'hello from mykey2'\n  empty01: \"%{}\"\n  empty02: \"%{  }\"\n  empty03: \"%{::}\"\n  empty04: \"%{  ::  }\"\n  empty05: \"%{} plus\"\n  empty06: \"%{   } plus\"\n  empty07: \"%{::} plus\"\n  empty08: \"%{::  } plus\"\n  empty09: \"%{} \"\n  empty10: \"%{    } \"\n  empty11: \"%{::} \"\n  empty12: \"%{  ::} \"\n\n  list1:\n    - 'clientcert/%%{}{clientcert}'\n    - 'puppet_role/%%{::}{puppet_role}'\n    - 'global'\n{code}\nI looked up each key of the form empty* in each version of hiera\nResult for old (failing) version:\n{code}\n[root@kqekn1nh19tjn3y hieradata]# for i in 01 02 03 04 05 06 07 08 09 10 11 12", "created": "2016-02-11T12:34:00.000000"}], "components": [], "created": "2016-01-20T14:09:00.000000", "creator": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@14cdb5ce"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:8872d0b6-d198-4e25-92ad-02776be82d59"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynoc7:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "A regression where empty interpolations in hiera strings caused garbage text to be inserted has been fixed. This regression was introduced in the 3.x hiera release. Empty interpolations i.e. %{}, %{::} now work, and the trick to get one verbatim interpolation into the string (e.g. \"%%{}{environment}\" producing the string \"%{environment}\" is now also again functional."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_471059162_*|*_1_*:*_1_*:*_99521156_*|*_10007_*:*_1_*:*_123931129_*|*_3_*:*_1_*:*_8680492_*|*_5_*:*_2_*:*_3017977678_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_80766785_*|*_10005_*:*_1_*:*_1111084794"}], "description": "Sometime between Puppet 3.8.x/Hiera 1.3.x and Puppet 4.3.x/Hiera 3.x, the interpolation result changed for the empty variable {{%&#123;&#125;}} Where previously, it would interpolate as an empty string, useful to help prevent interpolation of a variable when generating {{hiera.yaml}} or other similar files, it now results in the scope array. Some examples, from https://github.com/hunner/puppet-hiera/issues/108:\n\nExample 1: Returns the scope array and due to context, it provides the object name.\n{code}\n# puppet.yaml snippet\nhiera::datadir: '/etc/puppetlabs/code/environments/%%{}{environment}/hiera'\n\n# Results in puppet3/hiera1\n:yaml:\n   :datadir: /etc/puppetlabs/code/environments/%{environment}/hiera\n\n# Results in pupppet4/hiera3\n:yaml:\n  :datadir: /etc/puppetlabs/code/environments/%#<Hiera::Scope:0x17a1410d>{environment}/hiera\n{code}\n\nExample 2: Results in the scope array being enumerated at the CLI.\n{code}\nroot@ip-172-30-2-36:~# cat /etc/puppetlabs/code/environments/production/hieradata/common.yaml  | grep -i iptest\niptest: 'testing \"% % {} {::environment}\": %%{}{::environment}'\niptest2: 'testing \"% % {::} {::environment}\": %%{::}{::environment}'\n\nroot@ip-172-30-2-36:~# hiera iptest ::environment=production ::somevar=foo ::someother=bar\ntesting \"% % {} {::environment}\": %{\"::environment\"=>\"production\", \"::somevar\"=>\"foo\", \"::someother\"=>\"bar\"}{::environment}\n\nroot@ip-172-30-2-36:~# hiera iptest2 ::environment=production ::somevar=foo ::someother=bar\ntesting \"% % {::} {::environment}\": %{::environment}\n{code}\nIt is interesting that {{%&#123;::&#125;}} now translates as the empty string, so at least there is a workaround in place.\n\nThis looks like a regression from here. Is this a bug or a feature, given that {{%&#123;::&#125;}} wasn't necessarily supposed to be used to help prevent interpolation anyway?\n\n(pro Jira tip, use &#nnn; for character codes)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53931", "fixedVersions": ["HI 3.1.0"], "id": "53931", "issueType": "Bug", "key": "HI-494", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "resolution": "Fixed", "resolutionDate": "2016-02-11T12:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Interpolation of the empty variable %{} has changed", "timeSpent": "PT0S", "updated": "2016-03-17T11:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "cc/ [~accountid:557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e]", "created": "2016-01-15T16:27:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "It looks like this is already done at https://github.com/puppetlabs/hiera/blob/master/install.rb#L245\n\nWe're getting a hiera.bat file installed with these contents:\n\n{code}\n@echo off\nsetlocal\nset RUBY_BIN=%~dp0\nset RUBY_BIN=%RUBY_BIN:\\=/%\n\"%RUBY_BIN%ruby.exe\" -x \"%RUBY_BIN%hiera\" %*\n{code}", "created": "2016-01-19T16:46:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Note the commit had the wrong ticket number (HI-943 instead of HI-493). https://github.com/puppetlabs/hiera/pull/340", "created": "2016-02-03T19:00:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] are you still the person to bug about tickets like this?", "created": "2016-02-05T16:39:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "validated on windows2012r2 at master SHA: 18ebd9ad3cdb6c54140db83c251ed77f3023a6b6\n{code}\nPS C:\\Users\\Administrator> hiera.bat --version\n3.0.5\n{code}", "created": "2016-02-09T22:35:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This change just updates the functionality of the batch files, but should preserve existing functionality for anyone currently using these files", "created": "2016-02-10T11:01:00.000000"}], "components": ["Windows"], "created": "2016-01-15T16:26:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@39c423d1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynp27:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Release Engineering"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_142593046_*|*_1_*:*_1_*:*_37436_*|*_10007_*:*_1_*:*_631948335_*|*_3_*:*_1_*:*_38162_*|*_10009_*:*_1_*:*_42764954_*|*_5_*:*_1_*:*_3111839982_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_388794936_*|*_10006_*:*_1_*:*_1018790884"}], "description": "Our current way of installing hiera drops a ruby script into the bindir that doesn't work on windows. We need install.rb to install a .bat file instead (which we also either need to write or copy over from puppet_for_the_win)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53831", "fixedVersions": ["HI 3.1.0"], "id": "53831", "issueType": "Bug", "key": "HI-493", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2016-02-10T10:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update install.rb to install .bat files on windows", "timeSpent": "PT0S", "updated": "2016-03-17T11:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:ab1874a9-45ab-4efc-91aa-5200c165b2c4", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:ab1874a9-45ab-4efc-91aa-5200c165b2c4] thoughts? ", "created": "2017-08-07T16:43:00.000000"}], "components": ["Community"], "created": "2016-01-15T15:26:00.000000", "creator": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c0fb03f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3yxb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_49249019376_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_142935755595"}], "description": "The Hiera in EPEL has updated their Epoch number to 1. This means that it effectively has a higher version number than the later versions published by Puppet Labs.\n\nhttps://dl.fedoraproject.org/pub/epel/7/x86_64/repoview/hiera.html\n\nThe Puppet Labs Hiera RPM Epoch needs to be set to 1 or greater to override this and must stay that way forever.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54007", "fixedVersions": [], "id": "54007", "issueType": "Bug", "key": "HI-492", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "resolution": "Won't Do", "resolutionDate": "2022-02-17T00:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "EPEL Hiera is downgrading Hiera 3 to Hiera 1!", "timeSpent": "PT0S", "updated": "2022-02-17T00:06:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "1. Do we need to migrate people's existing stuff \n  3.x to agent migration (upgrade module)\n  previous version of agent to newer version\n\n2. Dealing with the semver question\n\n3. update the spec\n\nhenrik, eric, mike s, cooper, nick f", "created": "2016-01-13T14:34:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "https://github.com/puppetlabs/puppet-specifications/pull/61", "created": "2016-01-13T15:32:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Reminder: we need to tag the specifications repo whenever we release. A more elaborate process around versions of the spec, and stating compliance is probably needed... (here is not the place for talking about that though....).", "created": "2016-01-13T15:40:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Would this work: if you have a confdir located hiera.yaml it takes precedence over the current 4.x location. I think this will work since directories changed anyway, and there will not be installations with a hiera.yaml in the new location. This way, no major version change is required. You just move your file(s) and it is then easier to maintain.", "created": "2016-01-13T15:45:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "You may want to have the option to move when upgrading instead of staying on the old scheme.", "created": "2016-01-13T15:47:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "Are we still in agreement that hiera.yaml (puppet lookup version, AKA \"hiera.yaml, not to be confused with hiera.yaml,\" AKA \"v4,\" AKA \"v4 not to be confused with Puppet 4's hiera.yaml\") is purely code and NOT configuration, and thus should continue to live in each environment? ", "created": "2016-01-15T06:51:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "{quote} Are we still in agreement that v4 hiera.yaml is purely code and NOT configuration, and thus should continue to live in each environment?\n{quote}\nEmphatic yes", "created": "2016-01-15T15:07:00.000000"}, {"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "Can someone describe the following items for me?  Preferably in the current state and the proposed state.  \n\n1. Where does the puppet-agent package lay down hiera.yaml?\n2. Where is hiera_config configured to look for hiera.yaml by default in puppet?  \n3. Where does the hiera CLI tool look for hiera.yaml by default?  \n\nMy understanding of the proposal is:\n\n1. To have the puppet-agent package lay down hiera.yaml in $confdir instead of $codedir\n2. To have hiera_config look for hiera.yaml in $confdir instead of $codedir\n3. TO have hiera CLI look for hiera.yaml in $confdir instead of $codedir \n\nHowever, [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] proposed a changed to the behavior of the hiera_config setting in puppet and the hiera CLI to look in the $confidir first and then fall back to $codedir if a file does not exist in $confdir.  The only part I don't understand about that proposal is where packaging will put hiera.yaml because if it puts a default into $confdir then the fallback logic will not have its intended use.  Will packaging have to check for an existing file and decide what to do from there?", "created": "2016-01-20T16:25:00.000000"}, {"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "What [~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] said. If there is no plan to handle the existing, it does incur a major version bump (for the agent as well).", "created": "2016-01-26T06:22:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] your understanding of the proposal matches mine for #1, but differs for #2 and #3, where my take is that both puppet and hiera would know to look *first* in $confdir and then in $codedir. This difference, between what you wrote and what I wrote, would be a no-op for consumers of the puppet-agent package (short of installing puppet-agent and deleting $confdir/hiera.yaml), but would appease the semver gods wrt breaking contracts and allow us to introduce this change in a Y release rather than an X release.\n\nIf we go this route, I'd also recommend that we add release notes to puppet-agent (and PE) recommending that users who've modified $codedir/hiera.yaml should move their $codedir/hiera.yaml to $confdir/hiera.yaml. However, I don't have a good feeling for whether a documentation note is sufficient or if we would need to offer additional tooling, etc.\n\nThoughts?\n\n", "created": "2016-02-02T17:54:00.000000"}, {"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "I think it's going to be a necessity for puppet and hiera to check $confdir then $codedir as [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] is describing, because in PE 2015.2 we explicitly wrote migration code for the installer to move the hiera.yaml to codedir (on upgrades).  But because we have moved it into codedir, and folks probably have this under source control (particularly current Ankeny installations with file-sync/code-manager), we don't really have the option of automagically moving it back out again on upgrades.\n\nWell, actually we could copy back into confdir, we just can't remove it from codedir.  But it still seems like a good idea if puppet and hiera respected both paths.", "created": "2016-02-02T18:39:00.000000"}, {"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] if the package lays down hiera.yaml from the package into $confdir then users who update would have the stock hiera.yaml instead of the one they want from $codedir right?  ", "created": "2016-02-02T19:02:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] re:\n\n{quote}\nusers who update would have the stock hiera.yaml instead of the one they want from $codedir right?\n{quote}\n\nYes. That's what I was meaning to get at with this comment and question:\n\n{quote}\n I'd also recommend that we add release notes to puppet-agent (and PE) recommending that users who've modified $codedir/hiera.yaml should move their $codedir/hiera.yaml to $confdir/hiera.yaml. However, I don't have a good feeling for whether a documentation note is sufficient or if we would need to offer additional tooling, etc.\n\nThoughts?\n{quote}\n\nI'm wondering if we should set up a face-face with stakeholders in this to work through the options.", "created": "2016-02-03T11:00:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Conversation in this ticket was getting hard to follow, so I added a public g-doc to consider how to roll this change out.", "created": "2016-02-03T12:17:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "+1 on the design doc and driving that to consensus/decision first.", "created": "2016-02-03T12:30:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "The conversation on the google doc seemed to coalesce around this proposal:\n\n{quote}\n1. puppet-agent packaging would be updated to install a default hiera.yaml at {{$confdir/hiera.yaml}}\n2. both puppet and hiera would check in the old location, {{$codedir/hiera.yaml}}, and fall back to the new location {{$confdir/hiera.yaml}} \n3. we would document the new location and encourage users to move their hiera.yaml\n\nThis then raises the question of when we yank support for the old location, {{$codedir/hiera.yaml}}. Here the suggestion is:\n1. for puppet-agent this happens in a major release of puppet/hiera/puppet-agent\n2. for Puppet Enterprise additionally, we check if there is a $codedir/hiera.yaml and block the upgrade if it exists\n{quote}\n\nLooks like we have a decent number of watchers on this ticket, and I'll post to puppet-dev to boost the signal. What do y'all think about this plan?", "created": "2016-03-14T18:36:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "I've heard no objections to the plan above, either in this ticket or in the thread on puppet-dev: https://groups.google.com/d/msg/puppet-dev/NQBK0vdp2E0/Ev9vksOwDAAJ, based on which I'm moving this to Accepted. We'll need to do a bit of planning to break this out into the Puppet and Hiera tickets plus the PE upgrade logic mentioned above.\n\n", "created": "2016-04-06T12:17:00.000000"}, {"author": "557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79", "body": "FYI: Docs was flagged in PE-13367 to add this as a known issue in PE, which we are doing. Please add the DOCS tab on this ticket for a release note or bug fix when this is resolved. Just noting it here because I don't want to lose track of it. :-) Thank you!", "created": "2016-04-06T12:51:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced] or [~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] ping. Just a heads-up that this is the epic for moving hiera.yaml from codedir to confdir.", "created": "2016-04-18T16:05:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Hey watchers, I want to ask a question about the behavior on systems that have a modified {{hiera.yaml}} in codedir. I've been assuming (and thought it was written down but can't find it) that package installs and/or a PE upgrade will *not* move that existing file (because someone may have built up workflows around that), but will preserve it. Instead, docs for the puppet-agent and PE releases will *recommend* that the administrator manually move it to the new location.\n\nMake sense? If so, I'll update the title of this epic to something like \"Change the default location of hiera.yaml from codedir to confdir\".\n\nNote that in a follow-on PE release we would enforce this new locations by not allowing an upgrade to proceed if {{hiera.yaml}} was found in confdir (see the comment above at https://puppet.atlassian.net/browse/HI-490?focusedCommentId=274965&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-274965).\n", "created": "2016-04-28T13:15:00.000000"}, {"author": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] If there's a modified hiera.yaml in codedir are you assuming that file will be preserved on upgrade? ", "created": "2016-04-29T16:59:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "{quote}\nIf there's a modified hiera.yaml in codedir are you assuming that file will be preserved on upgrade?\n{quote}\n\nI was, and that's the assumption I wanted feedback on in my immediately previous comment (and I've reworded the comment to try to make it clearer).", "created": "2016-05-01T08:12:00.000000"}, {"author": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "body": "(thumbsup) the comment makes more sense now.", "created": "2016-05-02T10:56:00.000000"}, {"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "[~accountid:557058:3da95088-202d-4082-a15a-eb2e812f2578] I added the language scrum team this this ticket. Do you want me to add the RE team as well? ", "created": "2016-05-02T18:04:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c] good idea, added.", "created": "2016-05-03T08:21:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] can this epic be considered \"done\" now?", "created": "2016-05-11T10:29:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "All tickets for the epic are resolved. Closing", "created": "2016-05-11T10:49:00.000000"}, {"author": "557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79", "body": "We need a release note added to the DOCS tab on this ticket, please. This change is going into Couch?", "created": "2016-05-11T11:00:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79] Release notes are in the respektive tickets - it is a change in both hiera and in puppet.", "created": "2016-05-11T11:26:00.000000"}], "components": [], "created": "2016-01-13T11:27:00.000000", "creator": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "customFieldValues": [{"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Language"}, {"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Release Engineering"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@758e81d8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Move hiera.yaml from codedir to confdir"}, {"fieldName": "Epic Status", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-status", "value": "Done"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynr33:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_286683102_*|*_6_*:*_1_*:*_0_*|*_10010_*:*_1_*:*_1949147472_*|*_10004_*:*_1_*:*_7245642448_*|*_10005_*:*_1_*:*_794249356"}], "description": "The outcome of [PE-13367] was widespread agreement that the location of {{hiera.yaml}} in the current iteration is incorrect. I recall debate about this back when we were enumerating the path specification; the crux of the problem is that {{hiera.yaml}} is *both* a configuration file (location of the datadir setting, merge behaviour, etc) and \"code\" (the hierarchy). \n\nWe landed in the wrong place on this, unfortunately, once people started using the code directory in the wild, in combination with r10k and PE Code Manager. As [~accountid:557058:aa277a93-6688-4f34-ad9d-e53477acf74b] points out:\n\n{quote}\nHiera supports pluggable backends, notably hiera-eyaml, which may require package installation and other bits of non-trivial configuration. The Puppet Agent makes better sense as a management tool than a vcs system.... In general, I'd say that file sync shouldn't track anything that code manager can't deploy. Which vcs branch would hiera.yaml even live in given that it exists above the environments directory?\n{quote}\n\nSo we need to move it back into {{confdir}} - this ticket is to explore the ramifications of that change and figure out how we can do it with as little user disruption as possible.  ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53829", "fixedVersions": [], "id": "53829", "issueType": "Epic", "key": "HI-490", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "resolution": "Fixed", "resolutionDate": "2016-05-11T10:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Move hiera.yaml from codedir to confdir", "timeSpent": "PT0S", "updated": "2016-07-06T14:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "attachments": [], "comments": [{"author": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "body": "No additional work is required for Cumulus support", "created": "2016-01-06T13:45:00.000000"}, {"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "Reopened this issue because it showed up during the ticket reconciliation as part of the release steps. There was a code change that was committed as part of this ticket, so changed the resolution from won't fix to fixed.", "created": "2016-01-21T16:02:00.000000"}], "components": [], "created": "2016-01-06T12:15:00.000000", "creator": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5b364766"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3s6n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5422548_*|*_4_*:*_1_*:*_58468_*|*_5_*:*_1_*:*_402637466_*|*_6_*:*_2_*:*_1304114968"}], "description": "The Hiera Acceptance tests need to have the same options the Puppet Acceptance test has for support of the Cumulus Linux platform", "environment": "AIO Puppet Agent CI Pipeline", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53827", "fixedVersions": ["HI 3.0.6"], "id": "53827", "issueType": "Task", "key": "HI-489", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "resolution": "Fixed", "resolutionDate": "2016-01-21T16:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add support for Cumulus to Hiera acceptance tests", "timeSpent": "PT0S", "updated": "2016-04-27T17:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2016-01-06T11:59:00.000000", "creator": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@77456094"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3s5z:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3940335_*|*_10007_*:*_1_*:*_7725182_*|*_5_*:*_1_*:*_1701553924_*|*_6_*:*_1_*:*_0"}], "description": "The Hiera Acceptance tests need to have the same options the Puppet Acceptance test has for support of the Arista EOS platform", "environment": "AIO Puppet Agent CI Pipeline", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53706", "fixedVersions": ["HI 3.0.6"], "id": "53706", "issueType": "Task", "key": "HI-488", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e2510a0a-1767-444f-be52-bae9bb15d3f6", "resolution": "Fixed", "resolutionDate": "2016-01-06T15:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add support for Arista EOS to Hiera acceptance tests", "timeSpent": "PT0S", "updated": "2016-04-27T17:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I wonder if we should add support for the {{lookup}} function - it makes more sense going forward and it has a lot more options. Ideally, I would like to replace the interpolation in hiera to allow evaluation of puppet logic (for more advanced transformations). The way it is now done the interpolation logic is specific to hiera, and only a handful of options are available, does not really work for anything except strings etc.", "created": "2015-12-17T07:08:00.000000"}, {"author": "557058:54921db7-0271-4f8f-be78-bf68cccb06d2", "body": "If that's feasible, that would be a great alternative to what I suggested.", "created": "2015-12-17T07:17:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "-1 for adding even more stored procedure like functionality to what is supposed to be data :(", "created": "2015-12-17T07:19:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I understand the -1 for this, but when needed, it is needed, and now it pushed constructs on to the manifests, and requires jumping though hoops there instead of configuring it on the data side. As always, with power comes responsibility and requires some design skills.", "created": "2015-12-17T07:27:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "Indeed, and I think in this case it might be asking a bit too much design etc for the average user - invaluable for the power user though.\n\nThe problem for me really is in data portability, Hiera in the past had a standalone life to that data stored in it could be used elsewhere too hence using common formats like yaml and json and having a ruby query library.\n\nOf course things have changed there are much functionality now like the data lookup keys that I'd say makes this a bit less useful - still though the data is portable and even hiera() interprolation could probably work correctly via the library.\n\nGoing to far down this route though and the data isn't data anymore - it's not portable, its just hiera \"code\" and this is a big loss", "created": "2015-12-17T07:33:00.000000"}, {"author": "636d534e0ef20a5c40a43963", "body": "I think there are valid use cases for interpolation, even in the same file, where simple typing mistakes cause empty strings to be output instead of an error - I'd really value some way for these situations to throw a real error rather than dealing with the clean-up when the configuration is incorrect.", "created": "2015-12-17T08:18:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "In hiera 4, (Hiera as a data provider, added in PUP-4485) using the 'hiera' is actually a synonym for 'lookup' so in a sense, support for the lookup function has been added already. I don't think it resolves the problem with default values initially reported here though.\n\nI'm in favor the idea of adding a \"strict\" option that affects how interpolated lookups work (both in Hiera 3.x and in the data provider). Seems like a very useful, yet simple, way to detect typos and other mistakes that goes undetected today.\n\nI agree with R.I. regarding adding more magic logic to what's supposedly data. Allowing puppet language evaluation of data might sound appealing at first but what about side effects if such code affects state somehow? How do we track endless recursion? Do we need to consider additional security aspects such as data injection attacks? How do we report syntax/evaluation errors if the code is embedded in data provided by a function data provider? Lot's of added complexity.\n", "created": "2015-12-27T02:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Lets table the discussion about more advanced features for now...\n\nRegarding strict and default value. Can we support specifying a default value in the (interpolation) call to hiera/lookup? Also, can we support other options supported  by the lookup function (not sure exactly which ones that make sense)? ", "created": "2015-12-28T08:30:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "I'm going to close this ticket as \"won't do\"", "created": "2017-11-08T15:43:00.000000"}], "components": [], "created": "2015-12-17T04:33:00.000000", "creator": "557058:54921db7-0271-4f8f-be78-bf68cccb06d2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c143962"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3m3b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_59829015325_*|*_6_*:*_1_*:*_0"}], "description": "The default behaviour of the {{hiera()}} function in Puppet is to fail when a key is missing unless a default value is provided, so it is jarring to find that the equivalent interpolation function returns an empty string instead.\n\nI know it would break people's setups to change how this works by default but would it be possible to add an option to make interpolation stricter, so that we can catch typos? In situations where we want a specific lookup to fall back to an empty string, we can simply set it to that at the top of our hierarchy.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54005", "fixedVersions": [], "id": "54005", "issueType": "New Feature", "key": "HI-487", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:54921db7-0271-4f8f-be78-bf68cccb06d2", "resolution": "Won't Do", "resolutionDate": "2017-11-08T15:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Strict %{hiera()} interpolation", "timeSpent": "PT0S", "updated": "2018-06-20T05:02:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] this issue needs to be scheduled into a sprint.", "created": "2015-12-11T08:11:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "This is mostly ready to go (see https://github.com/puppetlabs/hiera/pull/331), just need beaker-hostgenerator and beaker changes to land.", "created": "2015-12-15T00:00:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "We're moving ahead with the beaker-hostgenerator side of this to get that in place and we'll jump on the beaker changes once they're available.", "created": "2015-12-22T16:56:00.000000"}], "components": [], "created": "2015-12-07T16:10:00.000000", "creator": "557058:91233464-4152-4228-81dd-172d43a52a03", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@265e608e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynyvb:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_56039777_*|*_1_*:*_1_*:*_330166903_*|*_10007_*:*_2_*:*_13525172_*|*_5_*:*_1_*:*_1118754705_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_2771633889"}], "description": "# In acceptance/Gemfile, add a gem dependency on beaker-hostgenerator\n# Update Rakefile to call beaker-hostgenerator to generate host configs instead of relying on static host configs in the repo.\n# Call beaker method (depends on BKR-648) to install puppet-agent using the dynamically generated host config.\n# Remove {{ci:test:package}} target from acceptance/Rakefile", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53634", "fixedVersions": ["HI 3.0.6"], "id": "53634", "issueType": "Improvement", "key": "HI-486", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:91233464-4152-4228-81dd-172d43a52a03", "resolution": "Fixed", "resolutionDate": "2016-01-13T09:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Remove host specific logic from hiera acceptance setup steps", "timeSpent": "PT0S", "updated": "2016-04-27T17:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is by design. A '.' is not an acceptable character in a key, and it is used to navigate to an element inside what is returned by hiera. This allows you to reach inside of hashes and arrays in interpolations.", "created": "2015-12-02T02:47:00.000000"}], "components": [], "created": "2015-12-02T02:26:00.000000", "creator": "557058:b9701f0f-390d-40c1-9497-9ac96dbd3ab1", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@de14c90"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3d6f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1320098_*|*_6_*:*_1_*:*_0"}], "description": "h3. Summary\n\nIm not sure if this should be filed as HI or PUP...\n\nIf you try and look up a key containing a dot (eg: `foo.bar`) the lookup key sent to the backend is truncated after the first \".\" Puppet 4.0.\n\nh3. Testing\n\nTo test this, take the following dummy backend.\n\n{code:ruby}\n    class Hiera\n      module Backend\n       class Dummy_backend\n         def lookup(key, scope, order_override, resolution_type, context={})\n            Hiera.debug(\"Key is #{key} of type #{key.class}\")\n           return { }\n         end\n       end\n      end\n    end\n{code}\n\nAnd the following puppet manifest\n\n{code}\n    class test  {\n      $foo=hiera('with.dot','aa')\n      $bar=hiera('without_dot','bb')\n    }\n    include test\n{code}\n\nh3. Results\n\nOn Puppet 3.8.4 with Hiera 1.3.4, 2.0.0 and 3.0.5  I I see the following:\n\n{noformat}\n    Debug: hiera(): Key is with.dot of type String\n    Debug: hiera(): Key is without_dot of type String\n{noformat}\n\nHowever on Puppet 4.0 the key for \"with.dot\" is is just \"with\":\n\n{noformat}\n    Debug: hiera(): Key is with of type String\n    Debug: hiera(): Key is without_dot of type String\n{noformat}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54004", "fixedVersions": [], "id": "54004", "issueType": "Bug", "key": "HI-485", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b9701f0f-390d-40c1-9497-9ac96dbd3ab1", "resolution": "Won't Fix", "resolutionDate": "2015-12-02T02:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Lookup key is truncated if it contains a dot in Puppet 4.0", "timeSpent": "PT0S", "updated": "2015-12-02T02:48:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:14ef943e-47fe-4712-accf-9b9382a35f47", "body": "Hi,\ni created a pull request https://github.com/puppetlabs/hiera/pull/324.\n\nRegards\nMike", "created": "2015-11-24T02:52:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This needs to be reverted - the \"compat\" modes should not be exposed in the API.\nHere is the revert PR: https://github.com/puppetlabs/hiera/pull/325", "created": "2015-11-25T06:41:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Revert merged.\n\nPlease change or create a new PR with a solution that does not alter the API. This could be done by checking if the compat methods are available and then use them instead of the regular. That is if i have correctly understood how it is supposed to work (that you can call the compat versions and get the same behavior as you normally would if Rails had not blocked the options in the regular calls. \n\nAlso note that for use with Puppet, the fix in hiera is not enough. Puppet now comes bundled with the deep merge gem, and it is used not only in the hiera project, but also by the hiera 4 implementation in puppet itself, and in the \"data in modules\" implementation.\n\n", "created": "2015-11-25T07:14:00.000000"}, {"author": "557058:14ef943e-47fe-4712-accf-9b9382a35f47", "body": "New pull request is under https://github.com/puppetlabs/hiera/pull/326 and already merged.", "created": "2015-12-03T00:18:00.000000"}], "components": ["Community"], "created": "2015-11-24T02:33:00.000000", "creator": "557058:14ef943e-47fe-4712-accf-9b9382a35f47", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5be917a0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3a1z:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "New Feature"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Support deep_merge compatibility mode."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_156476168_*|*_1_*:*_1_*:*_33896215_*|*_5_*:*_1_*:*_8009025631_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1072614176_*|*_10006_*:*_1_*:*_607575426"}], "description": "We just created a project that uses hiera and active record. Active support is included automatically and also provides deep_merge. This deep merge does not allow additional options and is in that way not compatible. The deep_merge gem has a compatiblity mode for this, see https://github.com/danielsdeleo/deep_merge#using-deep_merge-in-rails\n\nThis commit adds the possibility to use the compatibility mode.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53568", "fixedVersions": ["HI 3.1.0"], "id": "53568", "issueType": "Improvement", "key": "HI-483", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:14ef943e-47fe-4712-accf-9b9382a35f47", "resolution": "Fixed", "resolutionDate": "2015-12-15T18:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow compatibility mode of deep_merge", "timeSpent": "PT0S", "updated": "2016-03-17T11:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There are no difference between single quoted and double quoted strings in YAML and JSON. There is no simple solution to this problem since the \"programming language\" here is a data format and any changes to hiera interpretation of data is sensitive and will have incompatibilities that  would silently just deliver different data to users.\n\nI am therefore closing this as a \"won't fix\".", "created": "2015-11-25T06:52:00.000000"}, {"author": "557058:caae9c58-399c-4716-be37-c404839c368a", "body": "I really feel that closing this is the wrong thing to do, especially since the reason seems to be \"this is hard, so no.\"", "created": "2015-11-25T10:10:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:ca8dd0b5-5d07-4612-82e7-3f8af5fffe70", "body": "I understand that YAML and JSON don't treat double or single quotes differently", "created": "2015-11-25T10:24:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "\"it's all up to hiera as to how the backend data is being interpreted\"\n\nIt's not really, hiera does YAML.load(File.read(\"foo.yaml\")) and gets already parsed data back.  It has literally no idea and no possibility of an idea without writing its own YAML parser if the string was single/double quoted.  And that yaml parser would then not be portable meaning your data files become hiera data files and not yaml.\n\n", "created": "2015-11-25T10:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I know for a fact that it is impossible to differentiate one kind of string from another. So it is much harder than just \"hard\" since it is neither hiera nor puppet that is transforming the YAML or JSON into objects. When hiera gets hold of them they are just strings. What is left is only syntax in the actual strings. Hiera currently squats on everything in terms of syntax and data types - so yeah, this is impossible without causing incompatible breakage.\n\nWe would need to create a custom YAML or JSON parser in order to treat single or double quoted string differently. Alternatively encode the data differently by adding a top data file scope that is for instructions instead of keys (to allow some keys to be uninterpreted). The later can be achieved by implementing a custom backend - say by having data under they keys \"verbatim:\" and \"processed\" (or somesuch).\n\n", "created": "2015-11-25T11:00:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "A small example:\n\n{code}\n>> p YAML.load(\"foo: 'bar'\")", "created": "2015-11-25T11:00:00.000000"}, {"author": "557058:ddaa4b87-3b61-49bb-98f9-56fd02cdbb6b", "body": "Would nesting the quotes be an acceptable compromise?\n\n{code}\n---\nmessage: \"'this string gets returned exactly, including the single quotes around it.'\"\n{code}\n\n{code}\nirb(main):001:0> require 'yaml'\n=> true\nirb(main):002:0> p YAML.load(File.read('foo.yaml'))\n{\"message\"=>\"'this string gets returned exactly, including the single quotes around it.'\"}\n{code}\n\nI'm not sure that's a reasonable solution either, because the {{'}} and the {{\"}} blend into one another so easily. But it could work.", "created": "2015-11-25T11:40:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:ca8dd0b5-5d07-4612-82e7-3f8af5fffe70", "body": "[~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd]  Thanks for the demonstration.\n\n[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]  I see what you're saying now, and why hiera can't do what I was originally thinking.\n\nIt might be worth linking this issue on certain documentation pages which discuss Hiera.  There's already a note that values must be quoted, and I know some recent updates helped cover the RewriteRule issue by using %{literal('%')}, but it would help edify others to note:\n\n1.  Hiera doesn't parse YAML or JSON, ruby does.  Therefore Hiera is subject to whatever ruby returns.  (Show the example above from R.I.Pienaar).\n2.  Hiera's interpretations purposely remain simple, only interpreting %{} blocks.\n\nAnyway, thanks for all the feedback.", "created": "2015-11-25T11:46:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I should have given this some more thought before closing. I was so focused on the notion of double/single quoted string in the data format that I did not think about how to actually solve the problem.\n\nIn fact, since we just introduced {{lookup_options}} in puppet's lookup function, and for automatic data binding. The {{lookup_options}} could be expanded to allow mapping if a string should be verbatim or not. That would also work with existing providers. See ticket(s) for {{lookup_options}}. If you like that idea, we can change this ticket into providing support for a \"verbatim\" option. (Ping [~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd] Former user).", "created": "2015-11-25T14:24:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] that's an interesting option but I do not know if it's really something you want to set on the key?\n\nOne common use case for the literal() function I see from people is that they want to for example set some piece of data that usually is fine but in one case there's a %{} in the particular piece of data they want to avoid parsing - sometimes even just on one specific piece of data rather than all data for a key.\n\nNot saying it wouldnt be a good option - just not sure if it will address the common problem I've seen, perhaps others can throw in some more use cases they'd see for this ability?", "created": "2015-11-25T14:37:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "sure - it should be able to have the entire string as an argument to `literal`. I know there are other problems in hiera with rules that have problems seeing multiple '%'. The new implementation in \"data in modules\" does not have that problem (afaik). That way you can have both verbatim/literal and interpolation in the same string.", "created": "2015-11-25T14:44:00.000000"}, {"author": "70121:8b5c4705-c0a3-432d-82cf-e12cd95346bc", "body": "Just a note: I did just run into the same issue. I try to use following string in hieradata:\n{code}\n\"secure/services/%{literal('%')}{::service}/%{literal('%')}{::stack}/%{literal('%')}{::role}\"\n{code}\nThe issue for this is HI-469.", "created": "2015-12-02T03:26:00.000000"}], "components": [], "created": "2015-11-23T20:21:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:ca8dd0b5-5d07-4612-82e7-3f8af5fffe70", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f39c429"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3a13:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_124238749_*|*_6_*:*_1_*:*_0"}], "description": "Hiera treats any quoted string as a candidate for interpolation.  This is in contrast to most languages (including Puppet DSL) wherein single-quotes mean a string should be taken literally.\n\nWith $::environment == production\nmy_key: \"My environment is %{::environment}\"\n==> My environment is production\nmy_key: 'My environment is %{::environment}'\n==> My environment is production\n\nThe latter should evaluate to:\n==> My environment is %{::environment}\n\nThe limited interference of Hiera on the YAML back-end data has prevented this lack of behavior from being a bigger issue; but as Hiera grows over time it's likely this will help users avoid other problems with unintended expressions in data.\n\nA current example problem that has been discussed in other tickets (HI-127) was the Apache rewrite rule/cond string.  A few unsupported solutions were presented, but the final official response was to use a function:\nmy_key: \"RewriteCond %{literal('%')}{REMOTE_HOST} =host1\"\n==> RewriteCond %{REMOTE_HOST} =host1\n\nWhile it works, it seems significantly more complex than is necessary; it also has the expense of an entire function call just to place a percent sign.  (Not to mentioned we're further mixing code inside data, but that's another issue entirely...).\n\nThanks for your consideration.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53825", "fixedVersions": [], "id": "53825", "issueType": "Improvement", "key": "HI-482", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:ca8dd0b5-5d07-4612-82e7-3f8af5fffe70", "resolution": "Won't Do", "resolutionDate": "2015-11-25T06:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "String literals should literally be literal", "timeSpent": "PT0S", "updated": "2015-12-02T03:26:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Periods in keys are no longer allowed  - the change is intentional, and is required in order to handle the now more advanced interpolation navigation where '.' is an operator e.g. {{trusted.certname}} , {{an_array_key.0}} (pick first element), etc", "created": "2015-11-18T09:16:00.000000"}], "components": [], "created": "2015-11-17T11:17:00.000000", "creator": "557058:26c5159c-b2b1-4782-abbb-fb74eaa2c664", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@18ed8b5a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CS Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Needs Priority"}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz35h3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_79181590_*|*_6_*:*_1_*:*_0"}], "description": "In Hiera 3.0 you can no longer use periods in a key. For example common.yaml\n\n{code}\n---\nclasses.pieces: ntp\n{code}\n\nWhen using hiera classes.piecies on the CLI it will fail to find the value ntp.\n\n{code}\n[root@pe-201522-master production]# hiera -d classes.pieces\n---\nDEBUG: 2015-11-17 18:00:12 +0000: Hiera YAML backend starting\nDEBUG: 2015-11-17 18:00:12 +0000: Looking up classes in YAML backend\nDEBUG: 2015-11-17 18:00:12 +0000: Looking for data source common\nnil\n{code}\n\nAdditionally if you use hiera_include it will cause the puppet run to fail:\n\n{code}\n[root@pe-201522-master production]# puppet agent -t\nInfo: Retrieving pluginfacts\nInfo: Retrieving plugin\nInfo: Loading facts\nError: Could not retrieve catalog from remote server: Error 400 on SERVER: Evaluation Error: Error while evaluating a Function Call, Could not find data item classes in any Hiera data file and no default supplied at /etc/puppetlabs/code/environments/production/manifests/site.pp:37:1 on node pe-201522-master.puppetdebug.vlan\nWarning: Not using cache on failed catalog\nError: Could not retrieve catalog; skipping run\n{code}\n\nThe use of periods was allowed in hiera 1.3.4\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53680", "fixedVersions": [], "id": "53680", "issueType": "Bug", "key": "HI-481", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:26c5159c-b2b1-4782-abbb-fb74eaa2c664", "resolution": "Won't Fix", "resolutionDate": "2015-11-18T09:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Use of periods in hiera key no longer allowed. ", "timeSpent": "PT0S", "updated": "2015-11-18T09:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:1cd13816-742c-48b0-86e3-7e16e41031a1", "created": "2015-11-10T03:37:00.000000", "name": "facts.txt", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14182"}], "comments": [{"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:809ad65b-3aba-410f-a358-1320d8097737", "body": "Pull request\nhttps://github.com/puppetlabs/hiera/pull/347", "created": "2016-03-22T22:41:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hiera 3.1.1 will have the ability to escape dots. See HI-504.", "created": "2016-03-23T06:09:00.000000"}], "components": [], "created": "2015-11-10T03:39:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:1cd13816-742c-48b0-86e3-7e16e41031a1", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ee64643"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz31fz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11583235302_*|*_6_*:*_1_*:*_0"}], "description": "I want to get IP address and mask of network interface `bond0.975` in Hiera YAML file use the following ways:\n\n{code}\nnetmask: \"%{facts.networking.interfaces.bond0.975.netmask}\"\nor\nnetmask: \"%{facts.networking.interfaces.bond0_975.netmask}\"\nor\nnetmask: \"%{facts.networking.interfaces.bond0\\.975.netmask}\"\nor\nnetmask: \"%{scope('netmask_bond0.975')}\"\nor\nnetmask: \"%{scope('netmask_bond0\\.975')}\"\nor\nnetmask: \"%{scope('netmask_bond0_975')}\"\n{code}\n\nBut all of them return empty string instead of netmask value. `bond0.975` interfacte is exists (see dump of `facter -p` in attachment).\n\nSo, seems like Hiera don't escape dots in keys of facts. Could you please escape dots in facts?\n\nP.S. From Puppet I have a way to get netmask value use the following command:\n\n{code}\n$netmask = $facts['networking']['interfaces']['bond0.975']['netmask']\n{code}\n\nbut Hiera doesn't support such syntax.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53633", "fixedVersions": [], "id": "53633", "issueType": "Bug", "key": "HI-480", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:1cd13816-742c-48b0-86e3-7e16e41031a1", "resolution": "Duplicate", "resolutionDate": "2016-03-23T06:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Don't work access to facts with dot", "timeSpent": "PT0S", "updated": "2016-03-23T06:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "From RubyGems:\n{code}\nVERSIONS:\n3.4.0 - June 27, 2017 (40 KB)\n3.3.1 - March 09, 2017 (40 KB)\n3.3.1 - March 09, 2017 x86-mingw32 (40 KB)\n3.3.1 - March 09, 2017 x64-mingw32 (40 KB)\n3.3.0 - January 31, 2017 (39.5 KB)\n3.2.0 - May 20, 2016 (39 KB)\n{code}", "created": "2017-08-22T08:52:00.000000"}], "components": [], "created": "2015-11-03T03:36:00.000000", "creator": "557058:750f4af2-1c22-46dd-9477-5385f29f68db", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@303df60f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2wlb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_56866614177_*|*_6_*:*_1_*:*_0"}], "description": "3.0.1 is the latest available from rubygems.org. Please push at least 3.0.4, so OSes using the gems as package source can update their packages.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54049", "fixedVersions": [], "id": "54049", "issueType": "Bug", "key": "HI-478", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:750f4af2-1c22-46dd-9477-5385f29f68db", "resolution": "Fixed", "resolutionDate": "2017-08-22T08:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Please push new releases to rubygems.org", "timeSpent": "PT0S", "updated": "2017-08-22T08:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:f8fa2bbd-948b-435b-bdaf-5c61ec3d476c", "body": "%{::ec2_metadata.placement.availability-zone} works.", "created": "2015-10-26T10:52:00.000000"}], "components": [], "created": "2015-10-26T10:33:00.000000", "creator": "557058:f8fa2bbd-948b-435b-bdaf-5c61ec3d476c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3602dda8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2s9b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1166116_*|*_6_*:*_1_*:*_0"}], "description": "Currently the CLI seems to support only the dot notation for hashes (ec2_metadata.placement.availability-zone) and the hiera lookups support only the hash notation (%{ec2_metadata['placement']['availability-zone']}).  This increases the odds of error since you cannot just copy/paste between the two interfaces.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53822", "fixedVersions": [], "id": "53822", "issueType": "Improvement", "key": "HI-476", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:f8fa2bbd-948b-435b-bdaf-5c61ec3d476c", "resolution": "Fixed", "resolutionDate": "2015-10-26T10:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera should have a syntax recognized by both the CLI and hiera itself", "timeSpent": "PT0S", "updated": "2015-10-26T10:52:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:1cd13816-742c-48b0-86e3-7e16e41031a1", "body": "As I known syck doesn't support Unicode and deprecated. I think you should just quote your string with leading number: \n\n{code}\npassword: '0Xmy_secret_pass'\nmac: '08:00:27:32:56:08'\n{code} ", "created": "2015-11-10T03:50:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed as won't fix for reasons stated in the declined PR.", "created": "2015-11-10T17:35:00.000000"}, {"author": "622a55b3a1245000688bb532", "body": "I understand. I've found a temporary workaround to quote any string starting with '0'. ", "created": "2015-11-11T03:00:00.000000"}], "components": [], "created": "2015-10-23T06:59:00.000000", "creator": "622a55b3a1245000688bb532", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6ac7b4d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2rlj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1596958954_*|*_6_*:*_1_*:*_0"}], "description": "\n\nDefault YAML parser treats unquoted strings starting\nwith 0 sometimes as a numeric value.\n\nExample input:\npassword: 0Xmy_secret_pass\nmac: 08:00:27:32:56:08\n\n1.93 parser output:\n$ hiera password\n0Xmy_secret_pass\n$ hiera mac\n6226750568\n\n2.0.0 parser output:\n$ hiera password\n12380245\n$ hiera mac\n1960347\n\nOutput is as expected with 'syck' yamler in 1.9.3 and 2.0.0:\n$ hiera password\n0Xmy_secret_pass\n$ hiera mac\n08:00:27:32:56:08\n\nRuby versions below 1.9.3 do not contain 'syck' yamler and 2.1 is not affected.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53703", "fixedVersions": [], "id": "53703", "issueType": "Bug", "key": "HI-475", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "622a55b3a1245000688bb532", "resolution": "Won't Fix", "resolutionDate": "2015-11-10T17:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Use syck YAML parser for Ruby 1.9.3 and 2.0.x", "timeSpent": "PT0S", "updated": "2015-11-11T03:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "The hiera_include function is deprecated and will be removed in a future release. All of the hiera functionality is implemented in puppet lookup, so Im going to close this.", "created": "2022-02-17T00:08:00.000000"}], "components": ["Community"], "created": "2015-10-07T04:36:00.000000", "creator": "623d00004a57610068e7d1e1", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@77c9106d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2k3r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Feb/22"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_59199282906_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_141668215917"}], "description": "It seems like the yaml-backend does not resolve calling_module and calling_class to anything when called from a context outside of any class, for example directly from site.pp. I'm pretty sure, that it resolved to \"main\" sometime ago and I couldn't find any change or documentation on that.\nResolving to \"main\" does however work for the puppet-backend:\n\n*site.pp:*\n{noformat}\nhiera_include('role', '')\n{noformat}\n\n*hiera.yaml:*\n{noformat}\n:hierarchy:\n  - '%{::environment}/config/roles/%{::hnrole}'\n  - '%{::environment}/config/env/%{::environment}'\n  - '%{::environment}/config/defaults/%{calling_class}'\n  - '%{::environment}/config/defaults/%{calling_module}'\n  - '%{::environment}/config/defaults/hans'\n{noformat}\n\n*puppetserver.log:*\n{noformat}\n2015-10-07 09:48:49,280 DEBUG [puppet-server] Puppet hiera(): Hiera YAML backend starting\n2015-10-07 09:48:49,281 DEBUG [puppet-server] Puppet hiera(): Looking up role in YAML backend\n2015-10-07 09:48:49,283 DEBUG [puppet-server] Puppet hiera(): Looking for data source opsdev/config/roles/puppet\n2015-10-07 09:48:49,284 DEBUG [puppet-server] Puppet hiera(): Cannot find datafile /etc/puppet/env/opsdev/config/roles/puppet.yaml, skipping\n2015-10-07 09:48:49,285 DEBUG [puppet-server] Puppet hiera(): Looking for data source opsdev/config/env/opsdev\n2015-10-07 09:48:49,289 DEBUG [puppet-server] Puppet hiera(): Looking for data source opsdev/config/defaults/hans\n2015-10-07 09:48:49,290 DEBUG [puppet-server] Puppet hiera(): Cannot find datafile /etc/puppet/env/opsdev/config/defaults/hans.yaml, skipping\n2015-10-07 09:48:49,290 DEBUG [puppet-server] Puppet hiera(): Hiera File backend starting\n2015-10-07 09:48:49,291 DEBUG [puppet-server] Puppet hiera(): Looking up role in File backend\n2015-10-07 09:48:49,292 DEBUG [puppet-server] Puppet hiera(): Hiera File_backend: looking for data source 'opsdev/config/roles/puppet'\n2015-10-07 09:48:49,293 DEBUG [puppet-server] Puppet hiera(): Cannot find datafile /etc/puppet/env/opsdev/config/roles/puppet.d, skipping\n2015-10-07 09:48:49,294 DEBUG [puppet-server] Puppet hiera(): Hiera File_backend: looking for data source 'opsdev/config/env/opsdev'\n2015-10-07 09:48:49,294 DEBUG [puppet-server] Puppet hiera(): Cannot find datafile /etc/puppet/env/opsdev/config/env/opsdev.d, skipping\n2015-10-07 09:48:49,296 DEBUG [puppet-server] Puppet hiera(): Hiera File_backend: looking for data source 'opsdev/config/defaults/hans'\n2015-10-07 09:48:49,297 DEBUG [puppet-server] Puppet hiera(): Cannot find datafile /etc/puppet/env/opsdev/config/defaults/hans.d, skipping\n2015-10-07 09:48:49,298 DEBUG [puppet-server] Puppet hiera(): Hiera Puppet backend starting\n2015-10-07 09:48:49,298 DEBUG [puppet-server] Puppet hiera(): Looking up role in Puppet backend\n2015-10-07 09:48:49,306 DEBUG [puppet-server] Puppet hiera(): Looking for data in data::opsdev/config/roles/puppet\n2015-10-07 09:48:49,366 DEBUG [puppet-server] Puppet hiera(): Looking for data in data::opsdev/config/env/opsdev\n2015-10-07 09:48:49,372 DEBUG [puppet-server] Puppet hiera(): Looking for data in data::opsdev/config/defaults/main\n2015-10-07 09:48:49,377 DEBUG [puppet-server] Puppet hiera(): Looking for data in data::opsdev/config/defaults/main\n2015-10-07 09:48:49,384 DEBUG [puppet-server] Puppet hiera(): Looking for data in data::opsdev/config/defaults/hans\n2015-10-07 09:48:49,390 DEBUG [puppet-server] Puppet hiera(): Looking for data in main::data\n{noformat}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54048", "fixedVersions": [], "id": "54048", "issueType": "Bug", "key": "HI-474", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623d00004a57610068e7d1e1", "resolution": "Won't Do", "resolutionDate": "2022-02-17T00:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "calling_module/calling_class aren't resolved when called from outsite any module (e.g. site.pp)", "timeSpent": "PT0S", "updated": "2022-02-17T00:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "This was merged awhile ago, verification not needed, resolving", "created": "2015-10-27T17:25:00.000000"}], "components": [], "created": "2015-09-25T10:30:00.000000", "creator": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d9cc181"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2ddr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Oct/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1313862918_*|*_1_*:*_1_*:*_1475871058_*|*_5_*:*_1_*:*_174324703_*|*_6_*:*_1_*:*_0"}], "description": "Node definition files for acceptance tests should not include master nodes. \n\nStable at SHA 40246c2 and master at SHA 48e5f3c include node definitions that include master nodes for the following platforms.\n\n* osx-1010-x86_64\n* osx-109-x86_64\n* ubuntu-1504-i386\n* ubuntu-1504-x86_64", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53819", "fixedVersions": ["HI 3.0.4"], "id": "53819", "issueType": "Bug", "key": "HI-473", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "resolution": "Fixed", "resolutionDate": "2015-10-27T17:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "acceptance node definitions should not include masters", "timeSpent": "PT0S", "updated": "2016-04-13T18:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:abebd3bd-9c06-4ec8-ae7e-1932482e576f", "body": "oops hit enter by mistake", "created": "2015-09-24T19:13:00.000000"}], "components": [], "created": "2015-09-24T19:13:00.000000", "creator": "557058:abebd3bd-9c06-4ec8-ae7e-1932482e576f", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@78274459"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz24pz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_33115_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53817", "fixedVersions": [], "id": "53817", "issueType": "Bug", "key": "HI-472", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:abebd3bd-9c06-4ec8-ae7e-1932482e576f", "resolution": "Won't Fix", "resolutionDate": "2015-09-24T19:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "ci01.ops.puppetlabs.net", "timeSpent": "PT0S", "updated": "2015-09-24T19:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "5b32de14dab53b667c4de94f", "body": "Pull request is at https://github.com/puppetlabs/hiera/pull/314\n\nIt uses the context hash parameter to lookup() to pass in the fully qualified key.  If the backend support fully qualified keys, it sets qualified_value in context.\n\nIf the code is accepted, I will also update the docs.", "created": "2015-10-01T11:00:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We should have this feature in the new data provider API as well in such a way that a backend may opt in to deliver the entire expression. \n\nping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d]", "created": "2015-10-02T16:33:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Merged to master at [a431744|https://github.com/puppetlabs/hiera/commit/a431744f7d6c4a978548615f32283e9a73dc149c].", "created": "2015-10-27T15:46:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd], regarding adding this to the data provider API. So far, dotted keys have been limited to interpolation expressions and they are not supported in there unless the Hiera data provider is used. Do we want to extend the interpolation evaluation to be generic? In any case, I think that deserves a new ticket.", "created": "2015-10-27T15:49:00.000000"}, {"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] If we are pulling this in and merging it we need to add a fixVersion. ", "created": "2015-10-27T16:23:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Understood - this has somewhat lower priority than some of the other tickets for 4.3.0 as it is for a new feature and as thomas points out it should really be a general feature which needs an additional ticket (and work). So I doubt this will make it into 4.3.0.", "created": "2015-10-27T19:37:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] Yes, I do think that using dotted notation to get to a particular value should be a general feature available in all lookups - not just from interpolation - the main reason being performance. Just as in this case for hiera, you want the backend to be able to dig out the value as it may otherwise have to return a potentially huge data hash on which the user logic then picks out an itty bitty part.\n\nSo, yes, it deserves a separate ticket and also coordination with other query/data-navigation ideas.", "created": "2015-10-27T19:43:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "does this syntax line up with the Puppet Query Language syntax? [~accountid:557058:c7cbdc85-45ae-4448-ba0a-02eb26bfa727] can you double check that this work aligns with your design?", "created": "2015-10-28T14:24:00.000000"}, {"author": "557058:c7cbdc85-45ae-4448-ba0a-02eb26bfa727", "body": "[~accountid:70121:7b50b988-18ad-4913-8df5-c67397870b32] Please review this ticket, in light of your recent updates to PQL(x). ", "created": "2015-10-28T14:31:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "This ticket only concerns the allowing a backend to perform the qualified lookup if it is capable.  At the moment we don't have backends that can do this.\n\nI modified the yaml backend so that it will do a qualified (also called segmented) lookup and, using pry, verified that this is handled correctly by hiera.  I created a hiera file with a rich data structure and tried a variety of segmented lookups, testing access to hash elements, elements that are in an array and elements in an array in a hash in an array.  Some lookups returned individual values and others named substructures.  All lookups behaved as expected.\n\nHere's what I did to the yaml backend (added code snippet stolen from backend.rb):\n{code}\n[root@e1y006ip0nm7etg ~]# diff /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera/backend/yaml_backend.rb yaml_backend.rb-orig\n56,79d55\n<       def qualified_lookup(segments, hash)\n<         value = hash\n<         segments.each do |segment|\n<           throw :no_such_key if value.nil?\n<           if segment =~ /^[0-9]+$/\n<             segment = segment.to_i\n<             raise Exception, \"Hiera type mismatch: Got #{value.class.name} when Array was expected enable lookup using key '#{segment}'\" unless value.instance_of?(Array)\n<             throw :no_such_key unless segment < value.size\n<           else\n<             raise Exception, \"Hiera type mismatch: Got #{value.class.name} when a non Array object that responds to '[]' was expected to enable lookup using key '#{segment}'\" unless value.respond_to?(:'[]') && !value.instance_of?(Array)", "created": "2015-11-19T15:03:00.000000"}], "components": [], "created": "2015-09-23T11:05:00.000000", "creator": "5b32de14dab53b667c4de94f", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2fe3cd6f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Risk Probability", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Medium"}, {"fieldName": "QA Risk Probability Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Hard to estimate for the feature not yet implemented."}, {"fieldName": "QA Risk Severity", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "High"}, {"fieldName": "QA Risk Severity Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Getting the wrong value or no values is severe."}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyo8vj:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "New Feature"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "This new feature is for implementors of hiera backends.\n\nHiera backends can now opt in to a new feature in the backend API that allows the backend to be responsible for producing values from subkeys. This is beneficial for backends that would otherwise have to produce a very large hash (e.g. from a database or ldap) only to be reduced to a single looked up value and the returned data. Now the backend can instead opt in to do the required slicing.\n"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "PR submitted by user. Review in progress"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Oct/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_593637464_*|*_1_*:*_1_*:*_691067030_*|*_10007_*:*_1_*:*_1235182607_*|*_3_*:*_1_*:*_125696_*|*_5_*:*_1_*:*_10266595642_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1394658804_*|*_10004_*:*_2_*:*_1028011503"}], "description": "Since HI-14, Hiera can lookup leaf elements from structured data.  This was implemented by splitting the lookup key into period-separated values and calling into the backends for the the first token only.  Hiera then pulls out the requested value from the data returned from the backend.\n\nFor certain backends with deeply structured data, the first token may contain a substantial amount of data that is non-trivial to return.  Imagine, for example, a LDAP backend that can return data about users and groups on the system:\n{noformat}hiera users.user123.shell{noformat}\nwould have to return the entire users hash, which could contain thousands of superfluous records when we only want a string.  Passing the entire key to the backend and letting it intelligently handle what data to retrieve could be a huge optimization.\n\nThe difficulty in implementation is how the backend can tell Hiera that it supports Qualified Key Lookups so that Hiera doesn't try to do it itself.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53632", "fixedVersions": ["HI 3.1.0"], "id": "53632", "issueType": "New Feature", "key": "HI-471", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "5b32de14dab53b667c4de94f", "resolution": "Fixed", "resolutionDate": "2015-11-19T15:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow backends to perform Qualified Key Lookup", "timeSpent": "PT0S", "updated": "2016-03-17T11:53:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I hope this is still not an issue for you (this was reported 2015). The report is now against an old and deprecated version of hiera. If you are still having trouble with a later puppet please provide new information. Closing this for now.", "created": "2017-08-22T08:50:00.000000"}], "components": [], "created": "2015-09-16T10:05:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:bf3e8448-527b-4d28-839f-953dd3f19820", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3f37b25b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz28db:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_60993902725_*|*_6_*:*_1_*:*_0"}], "description": "Dear support,\n\nWe are using:\nOpen source puppet master/agents - \"4.2.1\"\nHiera - \"3.0.1\"\n\nHiera config /etc/puppetlabs/code/hiera.yaml  :\n\n:hierarchy:\n    - \"%{::environment}/%{::hostname}\"\n    - \"%{::environment}/%{::hostgroup}\"\n    - \"%{::environment}/%{::operatingsystem}/%{::operatingsystemmajrelease}\"\n    - \"%{::environment}/%{::operatingsystem}/common\"\n    - \"%{::environment}/common\"\n:backends:\n    - yaml\n:yaml:\n    :datadir: '/etc/hieradata'\n\n\nI have a class:\n\nclass spacewalk::client(\n  $server        = '',\n  $activationkey = '',\n  $register      = false\n) { ...\n\nIt should receive values from the following datasources depending on OS and major release:\n\n# cat /etc/hieradata/production/CentOS/common.yaml\n---\nspacewalk::client::register: true\nspacewalk::client::server: \"spacewalk.domainname\"\n\n\n\n# cat /etc/hieradata/production/CentOS/6.yaml\n---\nspacewalk::client::activationkey: \"1-xxxxxx\"\n\n\n\n# cat /etc/hieradata/production/CentOS/7.yaml\n---\nspacewalk::client::activationkey: \"1-yyyyy\"\n\n\nAgent applies manifest properly when I compile it from any environment but production! States of environments are similar.\n\npuppet.conf\n\n[master]\nvardir = /opt/puppetlabs/server/data/puppetserver\nlogdir = /var/log/puppetlabs/puppetserver\nrundir = /var/run/puppetlabs/puppetserver\npidfile = /var/run/puppetlabs/puppetserver/puppetserver.pid\ncodedir = /etc/puppetlabs/code\nstoreconfigs = true\nstoreconfigs_backend = puppetdb\nreports = store,puppetdb\n[main]\nenvironmentpath = $codedir/environments\ndefault_manifest = ./manifests\n\n\nHow can that happen?\n\nThanks ahead,\nSergey", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53866", "fixedVersions": [], "id": "53866", "issueType": "Bug", "key": "HI-470", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:bf3e8448-527b-4d28-839f-953dd3f19820", "resolution": "Cannot Reproduce", "resolutionDate": "2017-08-22T08:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Cannot interpolate variable only from production environment", "timeSpent": "PT0S", "updated": "2017-08-22T08:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] should check if we have an issue with this in the new  hiera for data in modules as well. Should be fixed for both.", "created": "2015-09-14T08:03:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I have verified that the data in modules implementation does not suffer from this problem.", "created": "2015-09-15T06:01:00.000000"}, {"author": "557058:b5d21d90-85ab-40c5-97cb-a7fe786754ec", "body": "As long as this is not fixed you can do workaround:\n\n---\nglobal::percent_sign: '%'\n\n\"cluster/%{hiera('global::percent_sign')}{::cluster}/%{hiera('global::percent_sign')}{role}\" \nwill result in:\n\"cluster/%{::cluster}/%{role}\"\n", "created": "2015-10-15T08:44:00.000000"}, {"author": "557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4", "body": "[~accountid:557058:b5d21d90-85ab-40c5-97cb-a7fe786754ec]  just getting back to this - your fix works - thanks for the suggestion. ", "created": "2015-10-27T12:17:00.000000"}, {"author": "623c0a197910a200718b904e", "body": "I can also confirm that the workaround does work.", "created": "2015-11-25T13:50:00.000000"}], "components": ["PE"], "created": "2015-09-14T07:01:00.000000", "creator": "557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b52a78d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:8872d0b6-d198-4e25-92ad-02776be82d59"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz26jr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Sep/15"}], "description": "I get an error when this literal function appears twice in the same hierarchy tier.\nI have this:\n{code}\n - \"cluster/%{literal('%')}{::cluster}/%{literal('%')}{role}\"\n{code}\nand the error I get is:\n{code}\nError: Could not retrieve catalog from remote server: Error 400 on SERVER: Evaluation Error: Error while evaluating a Function Call, Error from DataBinding 'hiera' while looking up 'puppet::data_hierarchy': Detected in [literal('%')] at ~~(class that is doing the lookup~~\n{code}\nIf i take either the first literal function or the last literal function out it fails.\n\nThe '%' escape function was implemented in HI-127", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53762", "fixedVersions": [], "id": "53762", "issueType": "Bug", "key": "HI-469", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Can't escape twice in a single hierarchy level", "timeSpent": "PT0S", "updated": "2015-11-25T13:50:00.000000", "votes": "4", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-09-08T16:00:00.000000", "creator": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@acba56d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz23qn:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Part of PUP-4883"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "0.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_193430_*|*_10007_*:*_1_*:*_263797_*|*_5_*:*_1_*:*_16487100943_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53890", "fixedVersions": ["HI 3.1.0"], "id": "53890", "issueType": "Improvement", "key": "HI-468", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "resolution": "Fixed", "resolutionDate": "2015-09-08T16:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Remove Fedora 20 node configs", "timeSpent": "PT0S", "updated": "2016-03-17T11:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Note that {{hiera_include}} is a very thin convenience function that you do not have to use to get what you want. You can do lookups using different merge strategies {{hiera_array}} or {{hiera_hash}}, and instead call {{include}} yourself. With Puppet 4.x (and 3.x with future parser) you can also easily loop over entires, or do transformations of what is returned - delete some of the entries etc.\n\nThis is what {{hiera_include}} actually does:\n{code:puppet}\ninclude(hiera('classes'))\n{code}\n\nOr if you want to use iteration:\n{code:puppet}\nhiera('classes').each |$c| { include c }\n{code}\n\nIf you want to remove some classes:\n{code:puppet}\ninclude(hiera('classes') - hiera('remove_classes'))\n{code}\n\nExamples all with \"future parser\", and the last assumes that 'remove_classes' always returns an array (it can be empty). \nThe examples above should be easy to modify to use {{hiera_array}} and a merge strategy instead of the standard priority lookup.\n\nAlso look at the {{lookup}} function for more features regarding lookup, merges, and knock_out of values (ie. what is asked for in HI-128).\n\nNote that with Puppet 4.x you can write your own function using the puppet language - e.g:\n{code:puppet}\nfunction myorg::classes_from_hiera() {\n  lookup('classes', Array) - lookup('remove_classes', Array))\n}\n# and use it like this\ninclude myorg::classes_from_hiera()\n{code}\n\nOr something similar...\n\nI do not see us adding the above functionality and flexibility for hiera 'classes' when it is trivially constructed out of general purpose building blocks. I am therefore closing this ticket as a \"won't fix\".\n", "created": "2015-09-07T20:06:00.000000"}, {"author": "557058:0117712d-bb9d-4300-af17-618b151fa267", "body": "Henrik,\n\nAfter opening this, I was actually driving out to dinner and realized how large a misunderstanding this was based on, mainly that my only real experience with declaring classes in Hiera is using the {{hiera_include('classes')}} pattern, and that this whole ticket was based on lack of understanding. I was also unaware that the lookup strategy could be defined on a per-lookup basis, as opposed to globally.\n\nGiven the above examples, I agree that this should be closed wont-fix.\n\nThanks!", "created": "2015-09-08T05:01:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:0117712d-bb9d-4300-af17-618b151fa267] No problem.", "created": "2015-09-08T08:52:00.000000"}], "components": [], "created": "2015-09-07T11:14:00.000000", "creator": "557058:0117712d-bb9d-4300-af17-618b151fa267", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7bd7aad8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz22wf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_31898730_*|*_6_*:*_1_*:*_0"}], "description": "Being able to specify classes to apply to a node via the {{classes}} key in Hiera data is very helpful, especially as a replacement for ENCs or when using masterless Puppet.\n\nUse case:\n* I want classes \"foo\" and \"bar\" on every node\n* I want the \"baz\" class on nodes with an OS Family of \"RedHat\"\n* I have configuration (normal keys, that are mapped to class parameters) in my data\n\nThis presents a problem:\n* If I keep the default ordering/merging behavior of Hiera, the first {{classes}} key that's found will be used by Hiera, so I'll either get my \"all nodes\" classes or my \"RedHat\" classes, depending on my hierarchy order.\n* If I change the merging behavior to [array merge|http://docs.puppetlabs.com/hiera/3.0/lookup_types.html#array-merge], this fixes the {{classes}} problem, but causes issues for ALL of my other configuration data, where I wanted the default merge strategy.\n\nProposal:\nHiera should have a configuration option which allows it to use a different merging strategy for the {{classes}} key. {{classes}} is already a special case, in that Puppet uses it differently from all other keys. As such, we should be able to specify a different merging strategy (such as array merge) for {{classes}} but keep the default (or whatever the user selected) for other keys.\n\nThis still presents a challenge in the desire for something like HI-128; if we have array merging for {{classes}}, it would also be very useful to be able to \"remove\" or \"delete\" a class from the array, that was previously added (and just adding another special {{remove_classes}} key probably isn't the way to do it).", "environment": "Arch Linux, Puppet 4.2.1, Hiera 3.0.1", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53702", "fixedVersions": [], "id": "53702", "issueType": "New Feature", "key": "HI-467", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:0117712d-bb9d-4300-af17-618b151fa267", "resolution": "Won't Fix", "resolutionDate": "2015-09-07T20:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Special handling of 'classes' key in data", "timeSpent": "PT0S", "updated": "2015-09-08T08:52:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:e30933ba-f350-43df-9986-8ad48eead020", "body": "Created PR https://github.com/puppetlabs/hiera/pull/298", "created": "2015-09-07T02:48:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Suggest this is implemented as a wrapper backend that relays to the original backend. Also suggest this is implemented as a separate module that users who want this functionality can install. It also adds dependencies to a library no available everywhere which makes it hard to include in all builds.\n\nI am closing this with a Won't Do for those reasons.", "created": "2015-09-07T20:38:00.000000"}], "components": ["Community"], "created": "2015-09-07T00:52:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:e30933ba-f350-43df-9986-8ad48eead020", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a047668"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz22un:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6888305_*|*_10009_*:*_1_*:*_64318824_*|*_6_*:*_1_*:*_0"}], "description": "\n\nI found very useful to have a memcache cache (similar with Filecache class) for custom hiera backends. It seems that using memcache decreases the catalog compilation time three times in our case.\nSince this is a useful feature across backends, I think that it should be put in the hiera library. That's why I'm proposing this PR.\n\nOn the other hand, the dependency on ruby Dalli class should be evaluated - no official RPM exists for RH and CentOS, only for Fedora and Ubuntu.\n\nSeveral usage information:\n\nThe following code should be specified in the custom backend:\n\nin initialize method:\n\n@cache = cache || Memcache.new(@servers)\n\n(of course, the @servers array should be taken from the configuration file during initialization)\n\nin lookup method:\n\n@cache.fetch(key) { search_method(key) }\n\nwhere key is the lookup key (or something obtained from lookup key) and search_method is the expensive code called for finding the information pertaining to lookup key.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53679", "fixedVersions": [], "id": "53679", "issueType": "New Feature", "key": "HI-466", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:e30933ba-f350-43df-9986-8ad48eead020", "resolution": "Won't Do", "resolutionDate": "2015-09-07T20:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Added memcache caching method for Hiera backends", "timeSpent": "PT0S", "updated": "2015-09-07T20:38:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Existing pre-suites for hiera at SHA {{fd259eb82d1732fb546c755a2c2f8c3245bcca4d}} successfully validated on Win10 using {{puppet-agent}} at SHA {{f5ff42641421237565b8c5ef9587203bb9e70d90}}\n\n\nResults using {{config/nodes/win10-rubyx64.yaml}}\n{code}\nsetup/aio/pre-suite/010_Install.rb passed in 84.25 seconds\n      Test Suite: pre_suite @ 2015-10-17 09:56:03 -0700\n\n      - Host Configuration Summary -\n\n\n              - Test Case Summary for suite 'pre_suite' -\n       Total Suite Time: 84.25 seconds\n      Average Test Time: 42.13 seconds\n              Attempted: 2\n                 Passed: 2\n                 Failed: 0\n                Errored: 0\n                Skipped: 0\n                Pending: 0\n                  Total: 2\n{code}\n\nResults using {{config/nodes/win10-rubyx86.yaml}}\n{code}\n      Test Suite: pre_suite @ 2015-10-17 10:03:26 -0700\n\n      - Host Configuration Summary -\n\n\n              - Test Case Summary for suite 'pre_suite' -\n       Total Suite Time: 67.26 seconds\n      Average Test Time: 33.63 seconds\n              Attempted: 2\n                 Passed: 2\n                 Failed: 0\n                Errored: 0\n                Skipped: 0\n                Pending: 0\n                  Total: 2\n{code}", "created": "2015-10-17T11:05:00.000000"}], "components": [], "created": "2015-09-02T16:32:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@34f0beb9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz212f:"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Windows"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Oct/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3868388716_*|*_5_*:*_1_*:*_1061134770_*|*_6_*:*_1_*:*_0"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53761", "fixedVersions": ["HI 3.0.4"], "id": "53761", "issueType": "Task", "key": "HI-465", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-10-17T11:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for Windows 10 (x64) ruby (x86, x64) for Hiera", "timeSpent": "PT0S", "updated": "2015-10-29T17:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "See [PR-464|https://github.com/puppetlabs/hiera/pull/316] for master.", "created": "2015-10-08T15:44:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced] has this not gone through CI at this point?", "created": "2015-10-27T08:58:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "[~accountid:557058:3da95088-202d-4082-a15a-eb2e812f2578], it doesn't look like win10 has been added to the CI matrix yet.\n\nhttps://jenkins.puppetlabs.com/view/All%20in%20One%20Agent/view/Master/view/Puppet%20Agent%20Daily/job/platform_aio-suite_intn-sys_master-hiera/", "created": "2015-10-27T14:30:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "verification not needed, resolving", "created": "2015-10-27T17:26:00.000000"}], "components": [], "created": "2015-09-02T16:31:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2cb8aeac"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz211r:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Windows"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Oct/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1313957058_*|*_1_*:*_1_*:*_3102764887_*|*_10007_*:*_1_*:*_336609206_*|*_3_*:*_1_*:*_1918984_*|*_10009_*:*_1_*:*_47871_*|*_5_*:*_1_*:*_174255304_*|*_6_*:*_1_*:*_0"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53631", "fixedVersions": ["HI 3.0.4"], "id": "53631", "issueType": "Task", "key": "HI-464", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-10-27T17:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for Windows 10 (x86, x64) to Hiera", "timeSpent": "PT0S", "updated": "2015-10-29T17:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3992e8a1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20lz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1041376798_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5605851"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%22HI%203.0.3%22%20AND%20status%20%3D%20Resolved\n\nThere is a bulk edit at the top (a gear with the word \"Tools\"). Should you decide to take this route:\n  * Select Bulk Change - All # issues\n  * Step 1 - choose all relevant issues (likely all of them)\n  * Step 2 - Select \"Transition Issues\"\n  * Step 3 - Select \"Closed\"\n  * Step 4 - Select \"Fixed\" in Change Resolution.\n  * View what is about to change and confirm it. Then commit the change.\n\nDependencies:\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53630", "fixedVersions": [], "id": "53630", "issueType": "Sub-task", "key": "HI-463", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-09-14T14:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-09-14T14:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "No announcements for this. puppet-agent will have an announcement.", "created": "2015-09-02T15:28:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7654ee91"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20lr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13037048_*|*_6_*:*_1_*:*_0"}], "description": "  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]: update the release google spreadsheet.\n  * Update the MSI build targets in the Puppet repo in ext/build_defaults.yaml. This needs to be done for any projects that are to get into the MSI (facter and hiera as of 8/2014)\n  * Send the drafted release notes email.\n    * If final send to puppet-announce and specific distribution lists (e.g. puppet to puppet-users & puppet-dev).\n    * If this release has security implications, also send the release announcement to puppet-security-announce\n  * Make a PSA on IRC letting those kiddos know about the new release.\n    * Something along the lines of \"PSA: facter 1.7.3 now available\"\n\nDependencies:\n  * Prepare long form release notes and short form release story\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54003", "fixedVersions": [], "id": "54003", "issueType": "Sub-task", "key": "HI-462", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Do", "resolutionDate": "2015-09-02T15:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-09-02T15:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Tag only release. No docs needed.", "created": "2015-09-02T15:27:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b8933c9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20lj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12974049_*|*_6_*:*_1_*:*_0"}], "description": "Push the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54046", "fixedVersions": [], "id": "54046", "issueType": "Sub-task", "key": "HI-461", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Do", "resolutionDate": "2015-09-02T15:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-09-02T15:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Since this release will be made available via the puppet-agent project, I believe we are only shipping the gem and tarball. Those are the only artifacts that should be built when you kick off the uber_build job.", "created": "2015-09-02T12:14:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Tag only release, no gem or tarball.", "created": "2015-09-02T15:27:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@707bbbde"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20lb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12945252_*|*_6_*:*_1_*:*_0"}], "description": "Push packages\n  * run `rake pl:jenkins:uber_ship`\n    * You will need the keys to the castle (aka the passphrase) for this to work.\n    * Don't forget to make sure everything looks like it's in the correct folder, the pkgs dir has been cleared out, and that you are shipping for all expected platforms.\n    * Get a *second set of RelEng eyes* on the packages that are about to be shipped to make sure everything looks a-okay.\n    * If you're shipping a gem you need to make sure you have a rubygems account, are an owner of that project, and have a gem config file.\n    * If you're shipping puppet you need to sign the MSI file for Windows. This is a manual process and the ship task doesn't ship or build the msi so talk to Moses or Haus for more details. This file also needs to be manually signed.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53929", "fixedVersions": [], "id": "53929", "issueType": "Sub-task", "key": "HI-460", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Do", "resolutionDate": "2015-09-02T15:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-09-02T15:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4] this will happen as soon as we have a tag available. I like to wait until we have all the projects for the puppet-agent release tagged so I can push them all out at once. The reason we don't wait is so we can update the build artifact in puppet-agent. ", "created": "2015-09-02T12:13:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Btw, [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] and [~accountid:557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4], just a heads up that this is a tag-only release. No packages (i.e. gem or tar). I'll touch up the ticket to reflect that.", "created": "2015-09-02T15:24:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Ah, thanks for the clarification on that, [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920]!", "created": "2015-09-02T15:26:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@207c4fe4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20l3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_693372907_*|*_5_*:*_1_*:*_0"}], "description": "The development team is responsible for updating the stable/master branches as necessary.\nThis will be done after the version bump in version.rb.\n\nDependencies:\n  * Go / No Go meeting (except where it's required to push the tag to build packages - MSIs)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53889", "fixedVersions": [], "id": "53889", "issueType": "Sub-task", "key": "HI-459", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-09-10T12:27:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-09-10T12:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a1282aa"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20kv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1033333591_*|*_6_*:*_1_*:*_0"}], "description": "This should happen Monday-Thursday, before 4pm. We should not be shipping anything after 4:00 PM or on a Friday both for our users, and because shipping takes time.\n\nGet a yes/no for the release from dev, docs, product, qa, releng.\n\nThis meeting is informal, over chat, and usually happens right before packages are pushed.\nKeep in mind we typically do not ship releases in the evening and we don't ship on Friday if the release is a final release.\n\nDependencies:\n  * Smoke testing\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53865", "fixedVersions": [], "id": "53865", "issueType": "Sub-task", "key": "HI-458", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Done", "resolutionDate": "2015-09-14T10:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-09-14T10:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Tag only release. No packages, so no smoke testing.", "created": "2015-09-02T15:26:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@78d3e13b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20k7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12909674_*|*_6_*:*_1_*:*_0"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.\n\nIn general this should happen on a variety of platforms, i.e. one or two each of kind of package we create (i.e., gem, dmg, msi, deb, rpm, etc).\n\nFor Puppet, our acceptance suite now tests service scripts, and on debian, a passenger master.  Manual smoke testing can therefore be limited to other package formats than deb and rpm.\n\nLighter testing of Z releases is acceptable.\n\n  * Add a link to the Packages repository that you receive from the \"Tag and create packages\" subtask\n  * Ping folks on your team for help with different platforms.\n  * When you pick up a platform, please leave a comment below that you are testing it. When it looks good, leave another comment, preferably with a code snippet showing the commands executed and their output.\n  * When all platforms picked have been smoke tested, move this ticket to done.\n\nIMPORTANT: Please edit the description of this ticket and remove \"Example:\" below. Edit the platforms to smoke test on, and the smoke test procedure.\n\nExample:\nSmoke test platforms:\n  * pick some platforms such as\n  * Windows 2003/2008/2012 (msi)\n  * Solaris 10/11 (tarball or gem?)\n  * OSX (dmg)\n  * (Note if you are smoke testing Puppet and pick an rpm or deb based platform, concentrate on testing a gem or tarball, since acceptance should have adequately smoke tested those packages.)\n    * RHEL/CentOS 5/6/7\n    * Fedora 19/20\n    * Debian 6/7\n    * Ubuntu 10.04/12.04/14.04\n\nSmoke test procedure:\n  * Start/stop/restart a master (if the platform supports that)\n  * Start/stop/restart an agent\n  * Help/man\n  * Write and run some manifests\n\nDependencies:\n  * Tag and create packages\n  * For Windows MSIs - Push tag\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53678", "fixedVersions": [], "id": "53678", "issueType": "Sub-task", "key": "HI-457", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Do", "resolutionDate": "2015-09-02T15:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-09-02T15:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Tag only release. No packages.", "created": "2015-09-02T15:25:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4] Please tag hiera 124a16d7e57bc6e67f82f2e8c23dfce9788066bf as 3.0.3. Note we don't want the AIX node configs in hiera#stable as that will go out in 3.0.4. /cc [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e], [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920]", "created": "2015-09-09T18:03:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] reassigning to you as Ryan is out this morning", "created": "2015-09-10T11:32:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "{code}\ntag 3.0.3\nTagger: Melissa Stone <melissa@puppetlabs.com>\nDate:   Thu Sep 10 11:26:40 2015 -0700\n\n3.0.3\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1\nComment: GPGTools - http://gpgtools.org\n\niQIcBAABCgAGBQJV8ctgAAoJEBBUt6JL1uwwbeUQAIqGn0FRXWOjiyJe5iOa9K/q\nDhxyjHZGxAmFfgvNbD+5kakl7zRLRZHz7uBMCqkiBolsphmZVqQJRPksyyGAL1RW\nYx7MbD0BC9zmTGHq9hcJysPMYk8RcUThHolqMfJQWcNGqopgMTUB7bR74PpGAxQo\nbkMo9xm41uLUMJ+/3NWwwq9RF83MzhKicmT8Gfh6kKdMhl425Nbm23EucuMgOSDJ\nICJvujcz6qWmI/ICQr8Yr6aChwF5Sk3k+dBk+ERWOZD8DmUHOXeCv6WXMWGrrRF7\nF1pFd+B7RLCsjFdMmTo131M/7OZzgFH7GvDGQmuMoXBdkqXkHKxVUtdCXWfGGtGW\n2Fa1gLpJAqawmqOzLu5bb1iYXmhrXC4ESPL74YvDRd+xLj8HwNbDCO2dPOhtA4Me\nobJMheh/ViHESqS7je7zfHJFJg2NFiKvHSP7iL5wFJy+Mq5upU/Jz5yqQze0bGyD\nJjjGLxt0sdj58jhxu68GUQqn2WJs6ZfPU2I1k79InxEsFyU5TP+K4CS4zNrYRu4t\nKiajZixBaCjl2gBpWTR4OqyfdZDu9byPgwrXDZIXuVd6SBJxs4x4S3qYiPT9JNIV\nuvU+QofjkKZoA0qYnmi6LROdt/M+E06O6SKDX5eOBolgUN4/Wira51SBwZpRgSfl\nE5wRjPJOaTFwvAyeNfwD\n=09B3\n-----END PGP SIGNATURE-----\n\ncommit 124a16d7e57bc6e67f82f2e8c23dfce9788066bf\nMerge: e6ba946 ff4b734\nAuthor: Michael Smith <michael.smith@puppetlabs.com>\nDate:   Wed Sep 9 09:23:26 2015 -0700\n\n    Merge pull request #301 from kylog/maint/bump-beaker-to-2.23\n\n    (maint) Bump beaker to 2.23\n{code}", "created": "2015-09-10T12:26:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "no packages, this is a tag-only release", "created": "2015-09-10T12:27:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5d3be380"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20jz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_627138649_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_66237880"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] - Please add the SHA as a comment (this should be the commit which contains the newly updated version.rb)\n  * checkout the sha\n    * Make sure you are about to tag the correct thing\n  * Create the tag e.g.) git tag -s -u {GPG key} -m \"1.7.3\" 1.7.3\n    * You need to know the pass phrase for this to complete successfully. It's important that we make sure all releases are signed to verify authenticity.\n    * DO NOT push the tag to the repo, keep it local only\n  * `git describe` will show you the tag. Make sure you're building what you think you're building.\n  * Make sure you look over the code that has changed since the previous release so we know what's going out the door.\n  * run `rake package:implode package:bootstrap pl:jenkins:uber_build` when you've verified what version you're building (this uses the latest version of the packaging repo to build the packages).\n  * If this is a puppet release, you have to build the windows msi. This is done using jenkins jobs on jenkins-legacy. You have to make sure you're targeting the correct versions of hiera, facter and puppet.\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] please add a comment with location of packages.\n\nFor puppet, don't forget the msi packages. This usually comes after other smoke testing is going well since it does require the tag to be pushed live.\n\nDependencies:\n  * Every ticket before this except for release notes.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53700", "fixedVersions": [], "id": "53700", "issueType": "Sub-task", "key": "HI-456", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-09-10T12:27:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-09-10T12:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Tag only release. No release notes needed.", "created": "2015-09-02T15:25:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a0617c2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20jr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12864452_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Is there a JIRA ticket targeted at the release for every commit?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53629", "fixedVersions": [], "id": "53629", "issueType": "Sub-task", "key": "HI-455", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Do", "resolutionDate": "2015-09-02T15:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-09-02T15:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "* Marked HI 3.0.3 as released\n* Created HI 3.0.4\n* Introduced in HI 3.0.3: https://puppet.atlassian.net/issues/?filter=15428\n* Fixes for HI 3.0.4: https://puppet.atlassian.net/issues/?filter=15430", "created": "2015-09-09T18:00:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@48063a3d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20jj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_627021187_*|*_5_*:*_1_*:*_0"}], "description": "This happens on Jira - we need to clean up the current release and prepare for the next release.\n  * Mark the version that's going out as \"Released\" in the Project Admin -> Versions panel.\n  * Create a version we can target future issues or issues that didn't make it into the current release.  (e.g. if we're releasing Facter 1.7.4, make sure there's a 1.7.5 version (or at least 1.7.x if there's isn't another bug release planned for the near future)\n  * Create a public pair of queries for inclusion in the release notes/announcement. These allow easy tracking as new bugs come in for a particular version and allow everyone to see the list of changes slated for the next release (Paste their URLs into the \"Release story\" ticket):\n    - 'project = XX AND affectedVersion = 'X.Y.Y', Save as \"Introduced in X.Y.Y\", click Details, add permission for Everyone\n    - 'project = XX AND fixVersion = 'X.Y.Z', Save as \"Fixes for X.Y.Z\", click Details, add permission for Everyone\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54078", "fixedVersions": [], "id": "54078", "issueType": "Sub-task", "key": "HI-454", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Done", "resolutionDate": "2015-09-09T18:01:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-09-09T18:01:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Does not apply. Releasing off stable.", "created": "2015-09-02T15:24:00.000000"}], "components": [], "created": "2015-09-02T11:51:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@72eaf0be"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20jb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12827494_*|*_6_*:*_1_*:*_0"}], "description": "For some releases, the code base will need to be merged down to stable.\n\n*NOTE:* This is usually only during a x.y.0 release, but even then it may have already been done. If it doesn't apply, close this ticket.\n\n\nAssuming you have origin (your remote) and upstream (puppetlabs remote), the commands will look something like this:\n{noformat}\ngit fetch upstream\ngit rebase upstream/master\n\ngit checkout stable\ngit rebase upstream/stable\n\ngit merge master --no-ff --log\n{noformat}\n\nOnce that looks good:\n{noformat}\ngit push origin\ngit push upstream\n{noformat}\n\nAfter merging to stable, the jobs on jenkins may require updates (spec, acceptance, etc) when you merge master into stable. Please ensure that the jenkins jobs are updated if necessary.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54045", "fixedVersions": [], "id": "54045", "issueType": "Sub-task", "key": "HI-453", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Do", "resolutionDate": "2015-09-02T15:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-09-02T15:24:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Done. Note for posterity, it was never updated to 3.0.2. But nbd.", "created": "2015-09-02T15:32:00.000000"}], "components": [], "created": "2015-09-02T11:50:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6de4ee91"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20iv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13312587_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/HI/version.rb or project.clj to correct version.\n\n  * Commit the updated version file.\n    * e.g) commit -m \"(packaging) Update FACTERVERSION to 1.7.3\".\n  * If any merging needs to happen (i.e. master into stable/stable into master), it can now happen (different subtask).\n  * Once this is done, hand the SHA to be built to RelEng to be tagged.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53888", "fixedVersions": [], "id": "53888", "issueType": "Sub-task", "key": "HI-452", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Done", "resolutionDate": "2015-09-02T15:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-09-02T15:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-09-02T11:50:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@14d8cd8b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20in:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_625628638_*|*_6_*:*_1_*:*_0"}], "description": "Ensure all tickets targeted at the release have a corresponding commit\n  * git log <old tag>..<new tag>\n  * This time, look through tickets targeted at this release in JIRA, and compare it to the commit log, looking for the corresponding numbers\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release) There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53864", "fixedVersions": [], "id": "53864", "issueType": "Sub-task", "key": "HI-451", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Duplicate", "resolutionDate": "2015-09-09T17:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-09-09T17:38:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "{noformat}\n$ ruby ../ticketmatch/ticketmatch.rb\nEnter Git From Rev: 3.0.2\nEnter Git To Rev: |master| 124a16d\nEnter JIRA project: |PUP| HI\nEnter JIRA fix version: HI 3.0.3\n  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n100  2138    0  2037  100   101   5206    258 --:--:-- --:--:-- --:--:--  5209\n-- HI-428 (Resolved)\n    571729e   Add Solaris 10/11 SPARC node defs\n    55b3f46   Add Solaris 10 x86_64 node config\n-- HI-430 (Resolved)\n    a562ce9   Add Solaris 11 x86_64 node config\n** MAINT\n    ff4b734   Bump beaker to 2.23\n    5b69f1f   Ignore merged_options.rb\n    2c43ce2   Add .yaml to Solaris node configs\n    288f72e   Update version number to 3.0.3\n    06f9b13   Ignore acceptance/tmp directory\n    d950e50   Update pinned Beaker version to 2.22\n---\nALL COMMIT TOKENS WERE FOUND IN JIRA\nALL ISSUES WERE FOUND IN GIT\n{noformat}", "created": "2015-09-09T17:43:00.000000"}], "components": [], "created": "2015-09-02T11:50:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31809079"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20if:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_625990135_*|*_5_*:*_1_*:*_0"}], "description": "Ensure all tickets referenced in the commit log have a bug targeted at the release\n\n  * git log <old tag>..<new tag>\n  * look through, and make sure that if there is a JIRA ticket number referenced in any of the commits, that ticket is targeted at the release\n  * Also, make sure the code itself is sane, that you understand why the change was made, etc. etc.\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release). There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53812", "fixedVersions": [], "id": "53812", "issueType": "Sub-task", "key": "HI-450", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Done", "resolutionDate": "2015-09-09T17:43:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-09-09T17:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-09-02T11:50:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@45ecf744"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20i7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_625015639_*|*_6_*:*_1_*:*_0"}], "description": "If there are any version dependencies expressed in the code base, make sure these are up to date. For Puppet, make sure the shas used to build the MSI are correct. For Puppet-Server, make sure all references to the puppet version are correct.\n\nAll tests (spec, acceptance) should be passing on all platforms for both stable & master.\n\n  * If a new platform has been added, make sure that platform has acceptance testing, new features have decent coverage, etc. etc.\n  * If the release is going to be cut from a sha, rather than the head of a branch, make sure that sha specifically has gone through spec/acceptance/etc. tests\n  * Move all items that should be moved from Ready for CI to Ready for Review\n\nHave all tickets been resolved (passed Functional Review)? If not please add any missing tickets to the current sprint's board.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%22HI%203.0.3%22", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53760", "fixedVersions": [], "id": "53760", "issueType": "Sub-task", "key": "HI-449", "labels": [], "originalEstimate": "PT0S", "parent": "53677", "parentSummary": "hiera 3.0.3 2015-09-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Done", "resolutionDate": "2015-09-09T17:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-09-09T17:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "* Introduced in HI 3.0.3: https://puppet.atlassian.net/issues/?filter=15428\n* Fixes for HI 3.0.4: https://puppet.atlassian.net/issues/?filter=15430", "created": "2015-09-10T12:18:00.000000"}], "components": [], "created": "2015-09-02T11:50:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6a401553"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz20hz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_625595804_*|*_3_*:*_1_*:*_418105795_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3379057"}], "description": "*** Note this will be a tag only release for CI purposes ***\n\nhiera 3.0.3 2015-09-09 Release\n\nWhen working through this ticket, add it to the board and then keep it in the Ready for Engineering column.\nMove the subtasks to In Progress when you are working on them and Resolved when you have completed them.\nIn general subtasks should only be moved to Ready for Engineering when they are ready to be worked on. For some assignees this is their cue to start working on release-related items.\n\n * The first set of tickets are assigned to the developer, those can all be converted to Ready for Engineering and you can start working through them.\n * Only when those are done should you move the \"Prepare notes\" and \"Tag release/create packages\" tasks to Ready for Engineering. Ping those assigned to move forward.\n * When you hear back for \"Tag Release/create packages\", you should move \"Smoke test packages\" to Ready for Engineering or In Progress if you are ready.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53677", "fixedVersions": [], "id": "53677", "issueType": "Task", "key": "HI-448", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Done", "resolutionDate": "2015-09-14T14:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera 3.0.3 2015-09-09 Release", "timeSpent": "PT0S", "updated": "2015-09-14T14:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Debian 9 is delayed, we can reopen this ticket if needed.", "created": "2016-03-16T16:08:00.000000"}], "components": [], "created": "2015-09-02T10:20:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@728ca592"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymozb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_16955296733_*|*_6_*:*_1_*:*_0"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53927", "fixedVersions": [], "id": "53927", "issueType": "Task", "key": "HI-447", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-03-16T16:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for Debian 9 Stretch (i386, amd64) for Hiera", "timeSpent": "PT0S", "updated": "2016-10-06T13:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "Overtaken by events so not needed anymore", "created": "2016-02-17T16:50:00.000000"}], "components": [], "created": "2015-09-02T10:19:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7f83482b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2q6n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14542231739_*|*_6_*:*_1_*:*_0"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53759", "fixedVersions": [], "id": "53759", "issueType": "Task", "key": "HI-446", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2016-02-17T16:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for Debian 9 Stretch (i386, amd64) to Hiera", "timeSpent": "PT0S", "updated": "2016-02-17T16:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "63d40635a05386069cdb69d6", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] I'm confused as to why the tickets we agreed would go to your team got kicked back to RE? Shouldn't all platforms be treated the same way? ", "created": "2015-09-08T22:29:00.000000"}, {"author": "557058:7ed56b44-735e-4cdb-b168-470ef48d5112", "body": "Closing this and other tickets associated with the obsolete Huawei platform epic. \n\nThe new epic is PA-159", "created": "2016-01-27T12:22:00.000000"}], "components": [], "created": "2015-09-01T17:03:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f5f9bfb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1zi7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Release Engineering"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_624349744_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_12149554123"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53810", "fixedVersions": [], "id": "53810", "issueType": "Task", "key": "HI-445", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-01-27T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for Huawei 6 (PowerPC) for Hiera", "timeSpent": "PT0S", "updated": "2016-01-27T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:7ed56b44-735e-4cdb-b168-470ef48d5112", "body": "Closing this and other tickets associated with the obsolete Huawei platform epic. \n\nThe new epic is PA-159", "created": "2016-01-27T12:19:00.000000"}], "components": [], "created": "2015-09-01T17:03:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a784e8f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyokun:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Release Engineering"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1829184385_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_10944555435"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53698", "fixedVersions": [], "id": "53698", "issueType": "Task", "key": "HI-444", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2016-01-27T12:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for Huawei 6 (PowerPC) to Hiera", "timeSpent": "PT0S", "updated": "2016-05-11T17:33:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623cfdfb8d8b9c0068b93e3c", "attachments": [], "comments": [], "components": [], "created": "2015-09-01T16:47:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3822f433"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyoafb:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_80422380_*|*_1_*:*_1_*:*_3656352643_*|*_10007_*:*_1_*:*_171927_*|*_3_*:*_1_*:*_64870351_*|*_5_*:*_1_*:*_1136353161_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_675175_*|*_10006_*:*_1_*:*_1794411496"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53758", "fixedVersions": ["HI 3.0.5"], "id": "53758", "issueType": "Task", "key": "HI-443", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-11-05T10:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for OSX 10.11 El Capitan (x86_64) for Hiera", "timeSpent": "PT0S", "updated": "2016-04-27T17:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [], "components": [], "created": "2015-09-01T16:47:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@39c86624"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyoaen:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "0.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_37563644_*|*_1_*:*_1_*:*_3656377624_*|*_10007_*:*_1_*:*_85597547_*|*_3_*:*_1_*:*_786552_*|*_5_*:*_1_*:*_1499393990_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_102804956_*|*_10006_*:*_1_*:*_1350757307"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53628", "fixedVersions": ["HI 3.0.5"], "id": "53628", "issueType": "Task", "key": "HI-442", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-11-01T05:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for OSX 10.11 El Capitan (x86_64) to Hiera", "timeSpent": "PT0S", "updated": "2015-11-18T14:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-09-01T16:27:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1043b839"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymoz3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11406640776_*|*_6_*:*_1_*:*_0"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54077", "fixedVersions": [], "id": "54077", "issueType": "Task", "key": "HI-441", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-01-11T15:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for Ubuntu 15.10 (i386, x86_64) for Hiera", "timeSpent": "PT0S", "updated": "2016-10-06T13:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "This is obviated by the use of beaker-hostgenerator.", "created": "2016-01-04T11:40:00.000000"}], "components": [], "created": "2015-09-01T16:27:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3dc0e2b0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymoyv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10786413412_*|*_6_*:*_1_*:*_0"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53887", "fixedVersions": [], "id": "53887", "issueType": "Task", "key": "HI-440", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-01-04T11:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for Ubuntu 15.10 (i386, x86_64) to Hiera", "timeSpent": "PT0S", "updated": "2016-10-06T13:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced] can this be closed now that we're leveraging Beaker differently to add new platforms?", "created": "2016-01-28T07:26:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Validated via {{puppet-agent#master}} ad-hoc pipeline", "created": "2016-01-28T18:23:00.000000"}], "components": [], "created": "2015-09-01T16:20:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3caec0ce"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymoyn:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12845112515_*|*_5_*:*_1_*:*_4206571345_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_39477970"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53676", "fixedVersions": ["HI 3.1.0"], "id": "53676", "issueType": "Task", "key": "HI-439", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2016-01-28T18:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for Fedora 23 (i386, x86_64) for Hiera", "timeSpent": "PT0S", "updated": "2016-10-06T13:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced] can you please confirm that this ticket is no longer relevant and close it? Thanks!", "created": "2016-02-09T11:25:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Node definitions are no longer required in the {{puppet-agent}} component projects. These are now dynamically derived using the {{beaker-hostgenerator}} gem.", "created": "2016-02-09T12:26:00.000000"}], "components": [], "created": "2015-09-01T16:20:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@43fa8924"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymoyf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13899958529_*|*_5_*:*_1_*:*_5227365_*|*_6_*:*_1_*:*_0"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54076", "fixedVersions": [], "id": "54076", "issueType": "Task", "key": "HI-438", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2016-02-09T13:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for Fedora 23 (i386, x86_64) to Hiera", "timeSpent": "PT0S", "updated": "2016-10-06T13:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "pre-suites for AIX 5.3 pass with Beaker master branch at SHA {{deb4377f0416e3c58fbf9a3432c1bf7030c7d9d1}}.\n\n{code}\n~/hiera/acceptance$ SUITE_VERSION=1.2.5.49.g1214e51 SHA=1214e51d63b84a82df0c55cab99abc2a3f90a597 CONFIG=config/nodes/aix-71-power.yaml bundle exec rake ci:test:aio\n\n      Test Suite: pre_suite @ 2015-09-29 08:13:55 -0700\n\n      - Host Configuration Summary -\n\n\n              - Test Case Summary for suite 'pre_suite' -\n       Total Suite Time: 33.79 seconds\n      Average Test Time: 16.89 seconds\n              Attempted: 2\n                 Passed: 1\n                 Failed: 0\n                Errored: 0\n                Skipped: 1\n                Pending: 0\n                  Total: 2\n{code}", "created": "2015-09-29T09:21:00.000000"}], "components": [], "created": "2015-09-01T15:56:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@8eefb07"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz118v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1869920093_*|*_3_*:*_1_*:*_559179_*|*_5_*:*_1_*:*_5615743734_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_525011779"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53757", "fixedVersions": [], "id": "53757", "issueType": "Task", "key": "HI-437", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-09-29T09:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for AIX 7.1 (PowerPC) for Hiera", "timeSpent": "PT0S", "updated": "2015-12-03T08:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [], "components": [], "created": "2015-09-01T15:56:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@187d8ea8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1z47:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Bringing in node configs to validate AIX."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_5511314_*|*_1_*:*_1_*:*_677637040_*|*_10007_*:*_1_*:*_2597933_*|*_5_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_425394141"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53552", "fixedVersions": [], "id": "53552", "issueType": "Task", "key": "HI-436", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-09-14T12:35:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for AIX 7.1 (PowerPC) to Hiera", "timeSpent": "PT0S", "updated": "2015-09-15T16:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "pre-suites for AIX 5.3 pass with Beaker master branch at SHA {{deb4377f0416e3c58fbf9a3432c1bf7030c7d9d1}}.\n\n{code}\n~/hiera/acceptance$ SUITE_VERSION=1.2.5.49.g1214e51 SHA=1214e51d63b84a82df0c55cab99abc2a3f90a597 CONFIG=config/nodes/aix-61-power.yaml bundle exec rake ci:test:aio\n\n      Test Suite: pre_suite @ 2015-09-29 08:01:17 -0700\n\n      - Host Configuration Summary -\n\n\n              - Test Case Summary for suite 'pre_suite' -\n       Total Suite Time: 27.85 seconds\n      Average Test Time: 13.92 seconds\n              Attempted: 2\n                 Passed: 1\n                 Failed: 0\n                Errored: 0\n                Skipped: 1\n                Pending: 0\n                  Total: 2\n{code}", "created": "2015-09-29T09:11:00.000000"}], "components": [], "created": "2015-09-01T15:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ae3dd24"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz119j:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1870726370_*|*_3_*:*_1_*:*_319992_*|*_5_*:*_1_*:*_5616328371_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_524121201"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54044", "fixedVersions": [], "id": "54044", "issueType": "Task", "key": "HI-435", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-09-29T09:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for AIX 6.1 (PowerPC) for Hiera", "timeSpent": "PT0S", "updated": "2015-12-03T08:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [], "components": [], "created": "2015-09-01T15:51:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6bcbdc9d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1yzb:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Bringing in node configs to validate AIX."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_5515091_*|*_1_*:*_1_*:*_677897492_*|*_10007_*:*_1_*:*_2594490_*|*_5_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_425431046"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53863", "fixedVersions": [], "id": "53863", "issueType": "Task", "key": "HI-434", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-09-14T12:35:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for AIX 6.1 (PowerPC) to Hiera", "timeSpent": "PT0S", "updated": "2015-09-15T16:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "pre-suites for AIX 5.3 pass with Beaker master branch at SHA {{deb4377f0416e3c58fbf9a3432c1bf7030c7d9d1}}.\n\n{code}\n~/hiera/acceptance$ SUITE_VERSION=1.2.5.49.g1214e51 SHA=1214e51d63b84a82df0c55cab99abc2a3f90a597 CONFIG=config/nodes/aix-53-power.yaml  bundle exec rake ci:test:aio\n\n      Test Suite: pre_suite @ 2015-09-29 08:01:17 -0700\n\n      - Host Configuration Summary -\n\n\n              - Test Case Summary for suite 'pre_suite' -\n       Total Suite Time: 27.85 seconds\n      Average Test Time: 13.92 seconds\n              Attempted: 2\n                 Passed: 1\n                 Failed: 0\n                Errored: 0\n                Skipped: 1\n                Pending: 0\n                  Total: 2\n{code}", "created": "2015-09-29T09:05:00.000000"}], "components": [], "created": "2015-09-01T15:43:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@287fcb29"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz11a7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1871595072_*|*_3_*:*_1_*:*_217784_*|*_5_*:*_1_*:*_2623520914_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_523509073"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53694", "fixedVersions": ["HI 3.0.4"], "id": "53694", "issueType": "Task", "key": "HI-433", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-09-29T09:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for AIX 5.3 (PowerPC) for Hiera", "timeSpent": "PT0S", "updated": "2015-10-29T17:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [], "components": [], "created": "2015-09-01T15:43:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@65604723"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1yv3:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Bringing in node configs to validate AIX."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_5516929_*|*_1_*:*_1_*:*_678410961_*|*_10007_*:*_1_*:*_2592935_*|*_5_*:*_1_*:*_3906885740_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_425465801"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54043", "fixedVersions": ["HI 3.0.4"], "id": "54043", "issueType": "Task", "key": "HI-432", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-09-14T12:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for AIX 5.3 (PowerPC) to Hiera", "timeSpent": "PT0S", "updated": "2015-10-29T17:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Works with HI-430. Tested with {{be rake ci:test:aio SHA=bd98fdd74b51eba26a76dcb2fd2d3afc0fc3596c CONFIG=config/nodes/solaris-11-x86_64 SUITE_VERSION=1.2.3.230.gbd98fdd}}.", "created": "2015-09-02T12:23:00.000000"}, {"author": "62450221ad6b7e006aa4e34c", "body": "Notes for testing in SPARC: https://confluence.puppetlabs.com/display/PP/Using+SPARC+Solaris+LDoms+for+Development+and+Testing", "created": "2015-09-02T17:05:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Pre-suites validated on SPARC", "created": "2015-09-03T11:42:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "https://github.com/puppetlabs/hiera/pull/319", "created": "2015-10-21T16:39:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "puppet-agent#master passed hiera acceptance, no verification needed, resolving.", "created": "2015-10-22T08:33:00.000000"}, {"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "Because there are some features on HI master that we do not want in puppet-agent 1.3.0, I am re-targeting this ticket at HI 3.0.5. This means that after 1.2.7 ships, this ticket needs to be back ported from master to stable for the agent 1.3.0 release. ", "created": "2015-10-28T15:11:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Submitted a PR to stable with [~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced]'s original fix. [~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced] could you verify the PR and that no other commits needed to be backported to hiera#stable? ", "created": "2015-11-02T12:05:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Solaris 11 SPARC passed in [hiera#master|https://jenkins.puppetlabs.com/view/All%20in%20One%20Agent/view/Manual/view/Puppet%20Agent%20Manual%20(master)/job/platform_aio-suite_intn-sys_master-hiera-nonpool/9/] and [hiera#stable|https://jenkins.puppetlabs.com/view/All%20in%20One%20Agent/view/Manual/view/Puppet%20Agent%20Manual%20(stable)/job/platform_aio-suite_intn-sys_stable-hiera-nonpool/9/] and Solaris 11 x86 passed in regular CI, so marking this as resolved.\n", "created": "2015-11-03T17:24:00.000000"}], "components": [], "created": "2015-09-01T15:31:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6dada28c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "FACT-927"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1b3b:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Brought in to validate Solaris for the upcoming release"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_151425942_*|*_1_*:*_1_*:*_74093711_*|*_10007_*:*_2_*:*_11798015_*|*_3_*:*_2_*:*_577182921_*|*_4_*:*_2_*:*_424449305_*|*_5_*:*_3_*:*_5414840197_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_84038463"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": "Facter 3 Solaris Support", "estimate": "PT0S", "externalId": "53627", "fixedVersions": ["HI 3.0.5"], "id": "53627", "issueType": "Task", "key": "HI-431", "labels": [], "originalEstimate": "PT0S", "parent": "61452", "parentSummary": "Facter 3 Solaris Support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-11-03T17:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for Solaris 11 (SPARC, i386) for Hiera", "timeSpent": "PT0S", "updated": "2015-11-18T14:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623cfdfb8d8b9c0068b93e3c", "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "It does not make sense to add a SPARC node definition at this time.", "created": "2015-09-02T15:55:00.000000"}], "components": [], "created": "2015-09-01T15:31:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1da59c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "FACT-927"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyofyf:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_51275_*|*_1_*:*_1_*:*_74112600_*|*_10007_*:*_1_*:*_10413751_*|*_3_*:*_1_*:*_827374_*|*_5_*:*_1_*:*_7924885205_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2463356"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": "Facter 3 Solaris Support", "estimate": "PT0S", "externalId": "54042", "fixedVersions": ["HI 3.0.3"], "id": "54042", "issueType": "Task", "key": "HI-430", "labels": [], "originalEstimate": "PT0S", "parent": "61452", "parentSummary": "Facter 3 Solaris Support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-12-03T08:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for Solaris 11 (SPARC, i386) to Hiera", "timeSpent": "PT0S", "updated": "2015-12-03T08:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "With HI-428, this works. Tested with {{be rake ci:test:aio SHA=bd98fdd74b51eba26a76dcb2fd2d3afc0fc3596c CONFIG=config/nodes/solaris-10-x86_64 SUITE_VERSION=1.2.3.230.gbd98fdd}}, all tests passed.", "created": "2015-09-02T12:21:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Need to run this on SPARC as well.", "created": "2015-09-02T15:46:00.000000"}, {"author": "62450221ad6b7e006aa4e34c", "body": "Notes for testing in SPARC: https://confluence.puppetlabs.com/display/PP/Using+SPARC+Solaris+LDoms+for+Development+and+Testing", "created": "2015-09-02T17:05:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Pre-suites validated on SPARC", "created": "2015-09-03T11:42:00.000000"}], "components": [], "created": "2015-09-01T12:58:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ce8658a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "FACT-927"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyofxr:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_74238193_*|*_3_*:*_1_*:*_2979925_*|*_5_*:*_1_*:*_2176411085_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_84112074_*|*_10006_*:*_1_*:*_6907972"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": "Facter 3 Solaris Support", "estimate": "PT0S", "externalId": "53809", "fixedVersions": [], "id": "53809", "issueType": "Task", "key": "HI-429", "labels": [], "originalEstimate": "PT0S", "parent": "61452", "parentSummary": "Facter 3 Solaris Support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-09-03T11:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suites working for Solaris 10 for Hiera", "timeSpent": "PT0S", "updated": "2015-09-28T16:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "62450221ad6b7e006aa4e34c", "body": "Internal SPARC node definitions can be found here: https://confluence.puppetlabs.com/display/PP/Using+SPARC+Solaris+LDoms+for+Development+and+Testing", "created": "2015-09-02T15:52:00.000000"}], "components": [], "created": "2015-09-01T12:57:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@a18d163"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "FACT-927"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyofxb:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_4294570_*|*_1_*:*_1_*:*_74263976_*|*_10007_*:*_2_*:*_73799556_*|*_3_*:*_2_*:*_5252846_*|*_5_*:*_2_*:*_952538408_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_12300440_*|*_10006_*:*_1_*:*_6910385"}], "description": "Update the source code to have test targets in acceptance/node/configs so we can run acceptance tests on this platform.\n", "epicLinkSummary": "Facter 3 Solaris Support", "estimate": "PT0S", "externalId": "53551", "fixedVersions": ["HI 3.0.3"], "id": "53551", "issueType": "Task", "key": "HI-428", "labels": [], "originalEstimate": "PT0S", "parent": "61452", "parentSummary": "Facter 3 Solaris Support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-09-03T16:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add node definition for Solaris 10 to Hiera", "timeSpent": "PT0S", "updated": "2015-09-14T14:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Will be handled by tickets for specific platforms.", "created": "2015-09-01T13:08:00.000000"}], "components": [], "created": "2015-09-01T12:55:00.000000", "creator": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@697275be"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz22dz:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7336_*|*_6_*:*_2_*:*_240690_*|*_10006_*:*_1_*:*_504798"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53626", "fixedVersions": ["HI 3.0.3"], "id": "53626", "issueType": "New Feature", "key": "HI-427", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "resolution": "Won't Fix", "resolutionDate": "2015-09-01T13:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add PE platform configs", "timeSpent": "PT0S", "updated": "2015-09-16T13:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Is this still an issue (we are now at puppet 5.1 and hiera 5)?", "created": "2017-08-22T08:47:00.000000"}], "components": [], "created": "2015-08-19T08:59:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:beb2e6a2-8e15-4875-9f44-19a5c39a5097", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2012774"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1qvb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/17"}], "description": "I'm facing some issues to use Hiera 3 with Puppet 4.2. When applying my puppet manifest using this command:\n\n{{puppet apply environments/production/manifests/init.pp --hiera_config=hiera.yaml}}\n\nI get the following error:\n\n{{Error: Evaluation Error: Error while evaluating a Function Call, Could not find data item myclass::ensure in any Hiera data file and no default supplied at /home/vagrant/temp/environments/production/manifests/init.pp:13:39 on node a}}\n\nHere is the directory structure :\n\n$ tree\n.\n\u251c\u2500\u2500 environments\n\u2502   \u2514\u2500\u2500 production\n\u2502       \u251c\u2500\u2500 config.yaml\n\u2502       \u2514\u2500\u2500 manifests\n\u2502           \u2514\u2500\u2500 init.pp\n\u2514\u2500\u2500 hiera.yaml\n\ncontent of config.yaml:\n---\n:backends:\n  - yaml\n\n:hierarchy:\n  - config\n\n:yaml:\n  :datadir: environments/production}}\n\ncontent of init.pp:\n\nclass myclass(\n  $version                          = $myclass::params::version,\n  $ensure                           = $myclass::params::ensure,\n) inherits myclass::params {\n  notify {\"$version\": }\n  notify {\"$ensure\": }\n}\n\nclass myclass::params {\n  $version                          = hiera('myclass::version', '1.0.0')\n  $ensure                           = hiera('myclass::ensure', 'running')\n}\n\nclass {'myclass': }\n\ncontent of hiera data source:\n---\nmyclass::version: '1.0.0'\nmyclass::ensure:\n\nLooks like Hiera can't handle empty values from a yaml data source and/or replace them by default value?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53625", "fixedVersions": [], "id": "53625", "issueType": "Bug", "key": "HI-425", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:beb2e6a2-8e15-4875-9f44-19a5c39a5097", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 3 + Puppet 4.2 can't manage empty value in yaml datasource", "timeSpent": "PT0S", "updated": "2017-08-22T08:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Changed the github page link from http://projects.puppetlabs.com/projects/hiera/ to https://docs.puppet.com/hiera/,", "created": "2017-04-18T06:02:00.000000"}], "components": [], "created": "2015-08-14T00:27:00.000000", "creator": "5b61153325ea8f2ca147bd04", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4ede7405"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1mrr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Apr/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_52983296310_*|*_6_*:*_1_*:*_0"}], "description": "https://github.com/puppetlabs/hiera still links to  http://projects.puppetlabs.com/projects/hiera/, which is on the long-deprecated redmine site. I'm not sure where it should link to or I would've just fixed it myself.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53756", "fixedVersions": [], "id": "53756", "issueType": "Task", "key": "HI-424", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "5b61153325ea8f2ca147bd04", "resolution": "Fixed", "resolutionDate": "2017-04-18T06:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera github page links to redmine", "timeSpent": "PT0S", "updated": "2017-04-18T06:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Using hiera at SHA `5464330` running the {{ci:test:aio}} rake task with puppet-agent build at SHA `93384d6`, the pre-suite is able to successfully provision and the tests result in no failures or errors.\n\nSteps to reproduce\n{code}\ngit clone https://github.com/puppetlabs/hiera.git\ncd hiera\ngit checkout 5464330\ncd acceptance\nbundle install\nSHA='93384d6' CONFIG=config/nodes/fedora-22-x86_64.yaml TESTS=tests \nbundle exec rake ci:test:aio\n{code}\n\nPre-suite summary\n{code}\n      Test Suite: pre_suite @ 2015-08-12 14:05:59 -0700                                                                      \n \n      - Host Configuration Summary -\n\n\n              - Test Case Summary for suite 'pre_suite' -\n       Total Suite Time: 7.97 seconds\n      Average Test Time: 7.97 seconds\n              Attempted: 1\n                 Passed: 1\n                 Failed: 0\n                Errored: 0\n                Skipped: 0\n                Pending: 0\n                  Total: 1\n\n      - Specific Test Case Status -\n        \nFailed Tests Cases:\nErrored Tests Cases:\nSkipped Tests Cases:\nPending Tests Cases:\n{code}\n\nTest summary\n{code}\n      Test Suite: tests @ 2015-08-12 14:06:07 -0700\n\n      - Host Configuration Summary -\n\n\n              - Test Case Summary for suite 'tests' -\n       Total Suite Time: 18.47 seconds\n      Average Test Time: 3.08 seconds\n              Attempted: 6\n                 Passed: 6\n                 Failed: 0\n                Errored: 0\n                Skipped: 0\n                Pending: 0\n                  Total: 6\n\n      - Specific Test Case Status -\n\nFailed Tests Cases:\nErrored Tests Cases:\nSkipped Tests Cases:\nPending Tests Cases:\n{code}", "created": "2015-08-12T15:10:00.000000"}], "components": [], "created": "2015-08-12T14:36:00.000000", "creator": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@677f8f0b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1lbz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2028951_*|*_5_*:*_1_*:*_9742002916_*|*_6_*:*_1_*:*_0"}], "description": "Stable branch pre-suite for aio should work properly with fedora-22 agent.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54075", "fixedVersions": [], "id": "54075", "issueType": "Task", "key": "HI-423", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "resolution": "Fixed", "resolutionDate": "2015-12-03T08:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Get pre-suite working with fedora-22", "timeSpent": "PT0S", "updated": "2015-12-03T08:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We have introduced the {{Sensitive\\[T]}} data type in Puppet, and it presents itself as having a \"redacted\" value. More work is needed in puppet to support encrypted data throughout the entire process - that is however not a feature specific to hiera. With Hiera 5 it is possible to return values as being instances of {{Sensitive}}.\n\nSee PUP-5832 and what it links to for what is available.\n\nClosing this as Won't Fix as this ticket is for the older hiera 3 where this will never be supported.", "created": "2017-08-22T08:20:00.000000"}], "components": [], "created": "2015-08-06T02:45:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:1c1d1755-8a73-4efc-b2bf-f3678b54d92c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1ddad68b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1g7b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_64560913970_*|*_6_*:*_1_*:*_0"}], "description": "Hiera-eyaml was originally designed to avoid putting data in plain text in version control. After the values have been deserialized, the data is put into PuppetDB as a resource with exposed values. \n\nCustomer wants a feature for puppetdb to prevent exposure of the sensitive data originally encrypted with eyaml in plaintext (or anywhere else in the system). It should remain encrypted within puppetdb, and anywhere else Puppet deals with it.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53624", "fixedVersions": [], "id": "53624", "issueType": "New Feature", "key": "HI-422", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:1c1d1755-8a73-4efc-b2bf-f3678b54d92c", "resolution": "Won't Do", "resolutionDate": "2017-08-22T08:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera eyaml data exposure prevention", "timeSpent": "PT0S", "updated": "2017-08-22T08:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:db38ef03-d979-4578-97e1-de447e0a7ebb", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I think the best approach to something like this is a backend that acts as a filter and that delegates to another backend. There is then no extra logic for the unfiltered cases, and it is possible to have different kinds of filters, whitelist, blacklist, pattern based etc. Just plug it in and use with any other backend without changes to hiera. Deliver that backend in a separate module.", "created": "2015-07-31T07:37:00.000000"}, {"author": "557058:db38ef03-d979-4578-97e1-de447e0a7ebb", "body": "Thanks Henrik, good idea.\n\nThis makes it much easier to make changes. I started implementing a wrapper backend with filtering options. Stay tuned!", "created": "2015-08-04T09:18:00.000000"}, {"author": "557058:db38ef03-d979-4578-97e1-de447e0a7ebb", "body": "[https://github.com/senax/hiera-wrapper]\n\nand\n\n[https://rubygems.org/gems/hiera-wrapper]\n\nWorks for me", "created": "2015-09-04T06:57:00.000000"}, {"author": "557058:db38ef03-d979-4578-97e1-de447e0a7ebb", "body": "Fixed with a backend plugin.\n\nhttps://github.com/senax/hiera-wrapper\n\nand\n\nhttps://rubygems.org/gems/hiera-wrapper\n\nWorks for me", "created": "2015-09-04T06:59:00.000000"}], "components": ["Community"], "created": "2015-07-31T04:45:00.000000", "creator": "557058:db38ef03-d979-4578-97e1-de447e0a7ebb", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1f370782"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1chb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3031994675_*|*_6_*:*_1_*:*_0"}], "description": "Some backend lookups can be quite expensive. It would be most useful to have the option of adding a whitelist of keys with a backend.\n\nWhen using a database as backend to look up ENC-like data for nodes, it will get lots of requests; most of which will be irrelevant for that backend (ntp::package_name for example).\n\nIn our testing we have seen catalogue compile times drop from ~65 to ~12 seconds.\n\nExample hiera.yaml entry:\n\n{noformat}:foreman:\n  :url: ...\n  :whitelist:\n    - puppetmaster\n    - environment\n    - patchrelease\n    - role\n{noformat}\n\nThis can also be a good way to prevent someone from setting 'root_password' in ENC and thus getting access to a node.\n\nHere is a bit of code that works for us:\n{noformat}\n--- a/lib/hiera/backend.rb\n+++ b/lib/hiera/backend.rb\n@@ -258,11 +258,16 @@ class Hiera\n\n         found = false\n         Config[:backends].each do |backend|\n+          whitelist=Config[backend.to_sym][:whitelist]\n           backend_constant = \"#{backend.capitalize}_backend\"\n           if constants.include?(backend_constant) || constants.include?(backend_constant.to_sym)\n             backend = (@backends[backend] ||= find_backend(backend_constant))\n             found_in_backend = false\n             new_answer = catch(:no_such_key) do\n+              if defined?(whitelist) and whitelist.is_a?(Array) and whitelist.size > 0 and not whitelist.include?(key)\n+                Hiera.debug(\"Skipping as #{key.inspect} is not on whitelist: #{whitelist.inspect}\")\n+                throw :no_such_key\n+              end\n               value = backend.lookup(segments[0], scope, order_override, resolution_type, context)\n               value = qualified_lookup(subsegments, value) unless subsegments.nil?\n               found_in_backend = true\n{noformat}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53550", "fixedVersions": [], "id": "53550", "issueType": "New Feature", "key": "HI-421", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Trivial", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:db38ef03-d979-4578-97e1-de447e0a7ebb", "resolution": "Won't Do", "resolutionDate": "2015-09-04T06:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera should support filters/whitelists for backends", "timeSpent": "PT0S", "updated": "2016-01-28T14:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "A couple of questions:\n\n* Is this a regression? If so from which version/configuration? (Hiera 3.0.1 contains an adjustment of the default/default configuration which in theory some users may rely upon).\n* Are you sure you are getting the hiera.yaml you have changed? The location of configuration files is different in puppet 4.x compared to 3.x.", "created": "2015-07-14T09:32:00.000000"}, {"author": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] \n\n* Not sure if it's a regression. This is the first time I'm trying to do this.\n* My hiera.yaml is at /etc/puppetlabs/code/hiera.yaml. I know it works since my hierarchy as defined is working.\n\nThanks,\nSiva", "created": "2015-07-14T09:49:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Deep merging only applies to {{hiera_hash}} function calls (or calls using the {{lookup}} function", "created": "2015-07-14T10:55:00.000000"}, {"author": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "body": "I'm using a forge module that uses *create_resources* to create the hiera lookups. There aren't any other specific hiera_hash calls. So, deep merging doesn't apply to create_resources?", "created": "2015-07-14T13:09:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Create resources may create classes, and if so, they get automatic lookup (but no deep lookups), nothing else happens automatically, and none of the automatic lookups are deep unless something calls hiera_hash explicitly and deep merging behavior is turned on. It all works as documented.\n\nSuggest taking issues like this to the user group on google first to get help or if you are a PE user contact Puppet Labs support. If you do find things not working as documented or that break between releases do log an issue.", "created": "2015-07-14T22:45:00.000000"}], "components": [], "created": "2015-07-13T23:44:00.000000", "creator": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@549675df"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz10un:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_35002355_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_48016219"}], "description": "Hi,\n\n1. I've enabled deep merging in hiera.yaml.\n\n{code}\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::fqdn}\"\n  - \"environment/%{::environment}\"\n  - \"roles/%{::role}\"\n  - global\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir: \"/etc/puppetlabs/code/hieradata/%{environment}\"\n\n:merge_behavior: deeper\n:deep_merge_options: {}\n{code}\n\n\n2. I installed the deep merge gem using puppetserver gem.\n\n{code}\n$ puppetserver gem list   \n*** LOCAL GEMS ***\n\ndeep_merge (1.0.1)\njar-dependencies (0.1.13)\njruby-openssl (0.9.7 java)\njson (1.8.0 java)\nrake (10.1.0)\nrdoc (4.1.2)\n\n{code}\n\n3. I restarted puppetserver after making the above changes.\n\n4. I've a class uses create_ esources to create resources from hiera lookups. I call the class in my global.yaml, with common settings and in roles/{%role} for role specific settings. However, only the role specific settings are being applied.\n\n", "environment": "CentOS 7 64 bit\nPuppet server 2.1.1\nPuppet 4.2\nPuppet agent 1.2.1\nHiera 3.0.1", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53862", "fixedVersions": [], "id": "53862", "issueType": "Bug", "key": "HI-420", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "resolution": "Won't Fix", "resolutionDate": "2015-07-14T22:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Deep merging not working with Hiera 3.0.1", "timeSpent": "PT0S", "updated": "2015-07-14T22:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "5d3754be2d50070c21a3c38f", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hm, need a bit more information to go on in order to possibly do something about this:\n\nCan you explain how you got this error message? What what were you doing and what did you expect?\nIs this from the hiera command line tool, or when using puppet, and if so, using one of the hiera functions (which one), or automatic data binding?\n\nWhich version of Puppet and Hiera are you using?\n", "created": "2015-07-03T15:46:00.000000"}, {"author": "5d3754be2d50070c21a3c38f", "body": "This is pretty easy to replicate. Make a yaml file with a hash, such as-\n\n---\nexample:\n   one: fish\n   two: cow\n   three: dog\n\nNow use hiera_array() to call it instead of hiera_hash(). This also works in reverse- if you have an array and grab is using hiera_hash you'll get a similar error message.\n\nWhat I would like to see changed is the line number for the hiera function that is calling and returning the error. This would make hunting down the faulty data far easier.", "created": "2015-07-03T15:59:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Which version of Puppet are you using, and do you have the future parser turned on?", "created": "2015-07-03T16:04:00.000000"}, {"author": "5d3754be2d50070c21a3c38f", "body": "Latest version from the apt repository (I believe that is 3.8).", "created": "2015-07-03T16:13:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "And are you using future parser or not?", "created": "2015-07-03T17:37:00.000000"}, {"author": "5d3754be2d50070c21a3c38f", "body": "No I am not.\n\n\n\n", "created": "2015-07-03T17:51:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I asked about parser=future because it should produce a line number for the line where you call hiera_array or hiera_hash (or any function for that matter that ends with an exception). There were several such improvements regarding error reporting that went into future parser (IIRC for 3.7), and that is now standard in puppet 4.x.\n\nThe problem of not displaying information about source is a puppet problem, and not specific to hiera. There used to be problems that only certain kinds of errors surfaced with this information. Hence my questions about version, if future parser is on or off.\n\nIf you see this problem with a 4.x puppet or with 3.8 and parser=future is turned on it is something we will fix.", "created": "2015-07-03T18:54:00.000000"}, {"author": "557058:88b7bd93-d432-4423-aaca-d0fdc06c4004", "body": "I'm seeing this with Puppet 4.8.0:\n\nbq. Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Internal Server Error: org.jruby.exceptions.RaiseException: (Exception) Hiera type mismatch: expected Array and got Hash\n", "created": "2016-11-18T08:51:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "If you have a stack trace (from the master side) it would be helpful.", "created": "2016-11-18T09:31:00.000000"}, {"author": "557058:88b7bd93-d432-4423-aaca-d0fdc06c4004", "body": "The only mention in the puppetserver log file is the same error message, no stack trace has been logged:\n\nbq. 2016-11-18 15:48:02,070 ERROR [qtp254011111-5818] [p.r.core] Internal Server Error: org.jruby.exceptions.RaiseException: (Exception) Hiera type mismatch: expected Array and got Hash\n", "created": "2016-11-18T09:41:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Need to run with {{\\--trace} I think.", "created": "2016-11-18T09:47:00.000000"}], "components": [], "created": "2015-07-02T17:27:00.000000", "creator": "5d3754be2d50070c21a3c38f", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@25bca49d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0u2v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Jul/15"}], "description": "\"Hiera type mismatch: expected Array and got Hash\"\n\nA file and line number would be fantastic here.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53861", "fixedVersions": [], "id": "53861", "issueType": "Bug", "key": "HI-419", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "5d3754be2d50070c21a3c38f", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Unhelpful Hiera Error", "timeSpent": "PT0S", "updated": "2016-11-18T09:47:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "70121:1f7c5098-d991-4129-bcae-5fc413f71091", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There is a setting {{hiera_config}} that points to where the configuration that is used by hiera is. The version in code is only used if there is no hiera_config setting, or if hiera is used outside of the domain of puppet.\n\nWhat is the observed problem?", "created": "2015-07-02T15:59:00.000000"}], "components": [], "created": "2015-07-02T12:47:00.000000", "creator": "70121:1f7c5098-d991-4129-bcae-5fc413f71091", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6003d87e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0tnz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11546523_*|*_6_*:*_2_*:*_25333_*|*_10004_*:*_1_*:*_60294061038"}], "description": "Currently, Hiera's {{config_dir}} is hardcoded to {{/etc/puppetlabs/code}} on *nix and {{C:\\ProgramData\\PuppetLabs\\code}} on Windows (https://github.com/puppetlabs/hiera/blob/3.0.1/lib/hiera/util.rb#L22-L28).\n\nThere should be a way for something external to set this.\n\nIn addition, it seems like {{var_dir}} (https://github.com/puppetlabs/hiera/blob/3.0.1/lib/hiera/util.rb#L30-L36) should by default be relative to {{config_dir}}.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54041", "fixedVersions": [], "id": "54041", "issueType": "Bug", "key": "HI-418", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:1f7c5098-d991-4129-bcae-5fc413f71091", "resolution": "Cannot Reproduce", "resolutionDate": "2017-05-30T12:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera's config_dir shouldn't be hardcoded", "timeSpent": "PT0S", "updated": "2017-05-30T12:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Which ruby version are you seeing this with?", "created": "2015-07-01T16:02:00.000000"}, {"author": "5d3754be2d50070c21a3c38f", "body": "Stock Ubuntu install, so:\n\nroot@puppet01:/etc/puppet# ruby --version\nruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]\n\nI take it this is an issue that got resolved at some point in ruby?", "created": "2015-07-01T16:11:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "If Ruby 1.8.x is used, it is the old Yaml implementation which does not support even Yaml 1.1 (I believe) and it also misbehaves in other ways. In Ruby 1.9 the MRI implementation changed to use Psych which is a wrapper around the native libyaml library.\n\nThe libyaml library (http://pyyaml.org/wiki/LibYAML) supports Yaml 1.1, and as far as I understand it, there is no support for the special markup for string continuations in 1.1.\n\nHiera is simply using the Yaml support in the Ruby runtime. What you need to do is to escape the newlines that libyaml turns into spaces like this:\n{code:yaml}\n---\nkey: \"Line1\\n\\\nLine2\\n\\\nLine3\"\nkey2: 1\n{code}\n\nClosing this as a won't fix as this is standard Yaml support in Ruby. Whenever there is a Yaml implementation in Ruby that supports Yaml 1.2 specification then hiera will also get those abilities.", "created": "2015-07-01T16:29:00.000000"}], "components": [], "created": "2015-07-01T15:00:00.000000", "creator": "5d3754be2d50070c21a3c38f", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@36f6f6da"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0ssf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "01/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5331001_*|*_6_*:*_1_*:*_0"}], "description": "The YAML standard has two ways to deal with strings that cross multiple lines:\n\n* Folded style, which is the default, ignores newlines and treats the string as one single line.\n\n* Literal style, which is signified by placing a pipe character after the colon, does not remove the newlines.\n\nThese can be found on the website for the YAML specifications: http://www.yaml.org/spec/1.2/spec.html#id2760844\n\nHiera is completely ignoring the YAML ability to switch between these two modes.\n\nThis is forcing users to use fully quoted text with the \"\\n\" special character for newlines.\n\nUnfortunately even there the standard is being ignored, because for some unknown reason this results in both the newlines being added *and* whitespace being added to the front of the lines immediately after the new line character.\n\n{code}\n'TestString': \"Line One\\n\nLine Two\\n\nLine Three\\n\"\n{code}\n\nResults in:\n{code}\nLine One\n Line Two\n Line Three\n{code}\n\nWhere there is a space on the second and third lines that should not be there. Unfortunately I can't get the jira formatting to work, so you'll have to view source of this message to see what I'm talking about.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53807", "fixedVersions": [], "id": "53807", "issueType": "Bug", "key": "HI-417", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "5d3754be2d50070c21a3c38f", "resolution": "Won't Fix", "resolutionDate": "2015-07-01T16:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera YAML does not match standard with regard to multiline strings", "timeSpent": "PT0S", "updated": "2015-07-01T16:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:75d3cfb8-3ac4-44d9-ac5e-dd8c665d6164", "attachments": [], "comments": [{"author": "557058:46db1adb-b5b9-4a3a-a02a-d0d3f23f222d", "body": "I am experiencing the same issue in puppet 4.5.0 and hiera 3.5.0", "created": "2016-06-02T22:28:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This looks very much like: PUP-4789", "created": "2016-06-03T17:00:00.000000"}, {"author": "557058:46db1adb-b5b9-4a3a-a02a-d0d3f23f222d", "body": "I personally can't see the relationship with this issue and PUP-4789 ( although internal scoping issues may be involved in both, but I'll leave that to the experts to advise )", "created": "2016-06-05T18:08:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Have you tried using {{::nodetype}} instead of {{nodetype}}  in your hiera.yaml ?", "created": "2016-06-08T08:22:00.000000"}, {"author": "557058:46db1adb-b5b9-4a3a-a02a-d0d3f23f222d", "body": "I can verify that I have tried {{::nodetype}} and variable is still not available for hierarchy", "created": "2016-06-08T19:52:00.000000"}], "components": [], "created": "2015-06-29T00:11:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:75d3cfb8-3ac4-44d9-ac5e-dd8c665d6164", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31e530e6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0qnr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Jun/16"}], "description": "When put hieradata for nginx in file  nodes/proxy0.example.net.yaml, it works, but put  in proxy.yaml, it didn't work.\n\n{code}\n$ cat ../../hiera.yaml\n---\n:backends:\n  - yaml\n  - json\n:yaml:\n  :datadir: '/etc/puppet/environments/%{::environment}/hieradata'\n:hierarchy:\n  - \"nodes/%{::clientcert}\"\n  - \"%{nodetype}\"\n  - \"modules/%{calling_module}\"\n  - \"%{::os_family}\"\n  - common\n\n$ cat manifests/site.pp\nnode default {\n  hiera_include('classes')\n}\n\nnode /^proxy(\\d+)\\.example\\.net$/ {\n  $nodetype = 'proxy'\n  hiera_include('classes')\n}\n\n$ cat hieradata/proxy.yaml (this didn't work)\n---\nclasses:\n  - nginx\n\nnginx::nginx_upstreams:\n  'local-tomcat':\n    ensure: 'present'\n    members:\n      - '127.0.0.1:8080'\n    upstream_cfg_prepend:\n      keepalive: '100'\nnginx::nginx_vhosts:\n  '_default':\n    server_name:\n      - 'localhost'\n    proxy: 'http://local-tomcat'\n    format_log: 'main'\n    vhost_cfg_prepend:\n      send_timeout: '10s'\n    location_cfg_append:\n      proxy_http_version: '1.1'\n      proxy_set_header: 'Connection \"\"'\nnginx::nginx_locations:\n  'static':\n    location: '~* \\.(js|css|png|jpg|jpeg|gif|ico)$'\n    vhost: '_default'\n    location_custom_cfg:\n      root: '/var/lib/tomcat/webapps/'\n      expires: '1d'\n{code}", "environment": "centos 7\npuppet 3.8.1/hiera 1.3.4 from puppetlabs repository", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54074", "fixedVersions": [], "id": "54074", "issueType": "Bug", "key": "HI-416", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:75d3cfb8-3ac4-44d9-ac5e-dd8c665d6164", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "User defined node scope variable not available in hierarchies", "timeSpent": "PT0S", "updated": "2016-06-08T19:53:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c08e1562ab90069f8aed4", "body": "Merged. Thank you for catching this. ", "created": "2015-06-24T12:19:00.000000"}], "components": ["DOCS"], "created": "2015-06-24T05:43:00.000000", "creator": "557058:983cfc60-0281-40e4-b9a3-49c169aead0b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d983eba"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0njb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_23735167_*|*_5_*:*_1_*:*_0"}], "description": "See: https://puppet.atlassian.net/browse/HI-184\n\nThe documentation [1,2,3] suggests that interpolation in the hierarchy levels is supposed to use the fully qualified fact name ({{%\\{::fact_name\\}}}). However, the examples on how to pass facts to {{hiera}} via {{\\-\\-yaml}} and {{--json}} do not reflect this and subsequently do not work.\n\nFor the examples to work with the suggested hierarchy configuration, they have to look as follows:\n\nYAML:\n\n{code:yaml}\n---\n\"::osfamily\": Debian\n\"::service\":  database\n{code}  \n\nJSON:\n\n{code:json}\n{\n  \"::osfamily\": \"Debian\",\n  \"::service\": \"database\"\n}\n{code}\n\n[1] https://docs.puppetlabs.com/hiera/1/configuring.html#example-config-file\n[2] http://docs.puppetlabs.com/hiera/latest/command_line.html#json-and-yaml-scopes\n[3] https://puppetlabs.com/blog/debugging-hiera", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53886", "fixedVersions": [], "id": "53886", "issueType": "Bug", "key": "HI-415", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:983cfc60-0281-40e4-b9a3-49c169aead0b", "resolution": "Fixed", "resolutionDate": "2015-06-24T12:19:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs do not show scope files with working, fully qualified fact names as used in hierarchy", "timeSpent": "PT0S", "updated": "2015-06-24T17:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@625b34e3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0n13:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_103388887_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_974398"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%223.0.0%22%20AND%20status%20%3D%20Resolved\n\nThere is a bulk edit at the top (a gear with the word \"Tools\"). Should you decide to take this route:\n  * Select Bulk Change - All # issues\n  * Step 1 - choose all relevant issues (likely all of them)\n  * Step 2 - Select \"Transition Issues\"\n  * Step 3 - Select \"Closed\"\n  * Step 4 - Select \"Fixed\" in Change Resolution.\n  * View what is about to change and confirm it. Then commit the change.\n\nDependencies:\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53549", "fixedVersions": [], "id": "53549", "issueType": "Sub-task", "key": "HI-414", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-24T17:09:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-06-24T17:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "IRC updated, release announce will go out as part of [RE-4790]", "created": "2015-06-24T20:09:00.000000"}], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@30a44026"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0n0v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_103385900_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_11824763"}], "description": "  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]: update the release google spreadsheet.\n  * Update the MSI build targets in the Puppet repo in ext/build_defaults.yaml. This needs to be done for any projects that are to get into the MSI (facter and hiera as of 8/2014)\n  * Send the drafted release notes email.\n    * If final send to puppet-announce and specific distribution lists (e.g. puppet to puppet-users & puppet-dev).\n    * If this release has security implications, also send the release announcement to puppet-security-announce\n  * Make a PSA on IRC letting those kiddos know about the new release.\n    * Something along the lines of \"PSA: facter 1.7.3 now available\"\n\nDependencies:\n  * Prepare long form release notes and short form release story\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54073", "fixedVersions": [], "id": "54073", "issueType": "Sub-task", "key": "HI-413", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-24T20:09:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Send out announcements", "timeSpent": "PT0S", "updated": "2015-06-24T20:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@48a3a407"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0n0n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2154513_*|*_5_*:*_1_*:*_0"}], "description": "Push the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54040", "fixedVersions": [], "id": "54040", "issueType": "Sub-task", "key": "HI-412", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T12:45:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Docs pushed", "timeSpent": "PT0S", "updated": "2015-06-23T12:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6896904c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0n0f:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_103325839_*|*_3_*:*_1_*:*_50052_*|*_5_*:*_1_*:*_0"}], "description": "Push packages\n  * run `rake pl:jenkins:uber_ship`\n    * You will need the keys to the castle (aka the passphrase) for this to work.\n    * Don't forget to make sure everything looks like it's in the correct folder, the pkgs dir has been cleared out, and that you are shipping for all expected platforms.\n    * Get a *second set of RelEng eyes* on the packages that are about to be shipped to make sure everything looks a-okay.\n    * If you're shipping a gem you need to make sure you have a rubygems account, are an owner of that project, and have a gem config file.\n    * If you're shipping puppet you need to sign the MSI file for Windows. This is a manual process and the ship task doesn't ship or build the msi so talk to Moses or Haus for more details. This file also needs to be manually signed.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53923", "fixedVersions": [], "id": "53923", "issueType": "Sub-task", "key": "HI-411", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-24T16:52:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Packages pushed", "timeSpent": "PT0S", "updated": "2015-06-24T16:52:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42f3ca4d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0n07:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_102089966_*|*_5_*:*_1_*:*_0"}], "description": "The development team is responsible for updating the stable/master branches as necessary.\nThis will be done after the version bump in version.rb.\n\nDependencies:\n  * Go / No Go meeting (except where it's required to push the tag to build packages - MSIs)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53885", "fixedVersions": [], "id": "53885", "issueType": "Sub-task", "key": "HI-410", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-24T16:30:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Push tag", "timeSpent": "PT0S", "updated": "2015-06-24T16:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5214ec06"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0mzz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_102210248_*|*_5_*:*_1_*:*_0"}], "description": "This should happen Monday-Thursday, before 4pm. We should not be shipping anything after 4:00 PM or on a Friday both for our users, and because shipping takes time.\n\nGet a yes/no for the release from dev, docs, product, qa, releng.\n\nThis meeting is informal, over chat, and usually happens right before packages are pushed.\nKeep in mind we typically do not ship releases in the evening and we don't ship on Friday if the release is a final release.\n\nDependencies:\n  * Smoke testing\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53860", "fixedVersions": [], "id": "53860", "issueType": "Sub-task", "key": "HI-409", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-24T16:32:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-06-24T16:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "only AIO testing for hiera", "created": "2015-06-23T15:55:00.000000"}], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1fb4ea7f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0mzr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13572320_*|*_6_*:*_1_*:*_0"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.\n\nIn general this should happen on a variety of platforms, i.e. one or two each of kind of package we create (i.e., gem, dmg, msi, deb, rpm, etc).\n\nFor Puppet, our acceptance suite now tests service scripts, and on debian, a passenger master.  Manual smoke testing can therefore be limited to other package formats than deb and rpm.\n\nLighter testing of Z releases is acceptable.\n\n  * Add a link to the Packages repository that you receive from the \"Tag and create packages\" subtask\n  * Ping folks on your team for help with different platforms.\n  * When you pick up a platform, please leave a comment below that you are testing it. When it looks good, leave another comment, preferably with a code snippet showing the commands executed and their output.\n  * When all platforms picked have been smoke tested, move this ticket to done.\n\nIMPORTANT: Please edit the description of this ticket and remove \"Example:\" below. Edit the platforms to smoke test on, and the smoke test procedure.\n\nExample:\nSmoke test platforms:\n  * pick some platforms such as\n  * Windows 2003/2008/2012 (msi)\n  * Solaris 10/11 (tarball or gem?)\n  * OSX (dmg)\n  * (Note if you are smoke testing Puppet and pick an rpm or deb based platform, concentrate on testing a gem or tarball, since acceptance should have adequately smoke tested those packages.)\n    * RHEL/CentOS 5/6/7\n    * Fedora 19/20\n    * Debian 6/7\n    * Ubuntu 10.04/12.04/14.04\n\nSmoke test procedure:\n  * Start/stop/restart a master (if the platform supports that)\n  * Start/stop/restart an agent\n  * Help/man\n  * Write and run some manifests\n\nDependencies:\n  * Tag and create packages\n  * For Windows MSIs - Push tag\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53806", "fixedVersions": [], "id": "53806", "issueType": "Sub-task", "key": "HI-408", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T15:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Smoke test packages", "timeSpent": "PT0S", "updated": "2015-06-23T15:55:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@30da1ca2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0mzj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_102093943_*|*_5_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] - Please add the SHA as a comment (this should be the commit which contains the newly updated version.rb)\n  * checkout the sha\n    * Make sure you are about to tag the correct thing\n  * Create the tag e.g.) git tag -s -u {GPG key} -m \"1.7.3\" 1.7.3\n    * You need to know the pass phrase for this to complete successfully. It's important that we make sure all releases are signed to verify authenticity.\n    * do push the tag live\n  * `git describe` will show you the tag. Make sure you're building what you think you're building.\n  * Make sure you look over the code that has changed since the previous release so we know what's going out the door.\n  * run `rake package:implode package:bootstrap pl:jenkins:uber_build` when you've verified what version you're building (this uses the latest version of the packaging repo to build the packages).\n  * If this is a puppet release, you have to build the windows msi. This is done using jenkins jobs on jenkins-legacy. You have to make sure you're targeting the correct versions of hiera, facter and puppet.\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] please add a comment with location of packages.\n  * Also create a PR against puppet-agent#aardwolf referencing the tag\n\nFor puppet, don't forget the msi packages. This usually comes after other smoke testing is going well since it does require the tag to be pushed live.\n\nDependencies:\n  * Every ticket before this except for release notes.\n\nNote this includes pushing the tag, so closing that separate step.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53755", "fixedVersions": [], "id": "53755", "issueType": "Sub-task", "key": "HI-407", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-24T16:30:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-06-24T16:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:09:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7ddd8e35"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0mzb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2191631_*|*_5_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Is there a JIRA ticket targeted at the release for every commit?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53675", "fixedVersions": [], "id": "53675", "issueType": "Sub-task", "key": "HI-406", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T12:45:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-06-23T12:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "HI 3.0.2 created, HI 3.0.0 marked as unreleased, labels updated. ", "created": "2015-06-23T15:18:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Introduced in HI 3.0.1 https://puppet.atlassian.net/issues/?filter=14800\nFixed in HI 3.0.1 https://puppet.atlassian.net/issues/?filter=14802", "created": "2015-06-23T15:47:00.000000"}], "components": [], "created": "2015-06-23T12:08:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5bd94a0e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0mz3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13098793_*|*_5_*:*_1_*:*_0"}], "description": "This happens on Jira - we need to clean up the current release and prepare for the next release.\n  * Mark the version that's going out as \"Released\" in the Project Admin -> Versions panel.\n  * Create a version we can target future issues or issues that didn't make it into the current release.  (e.g. if we're releasing Facter 1.7.4, make sure there's a 1.7.5 version (or at least 1.7.x if there's isn't another bug release planned for the near future)\n  * Create a public pair of queries for inclusion in the release notes/announcement. These allow easy tracking as new bugs come in for a particular version and allow everyone to see the list of changes slated for the next release (Paste their URLs into the \"Release story\" ticket):\n    - 'project = XX AND affectedVersion = 'X.Y.Y', Save as \"Introduced in X.Y.Y\", click Details, add permission for Everyone\n    - 'project = XX AND fixVersion = 'X.Y.Z', Save as \"Fixes for X.Y.Z\", click Details, add permission for Everyone\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53623", "fixedVersions": [], "id": "53623", "issueType": "Sub-task", "key": "HI-405", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T15:47:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-06-23T15:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "master not merged to stable, but stable merged to master", "created": "2015-06-23T15:13:00.000000"}], "components": [], "created": "2015-06-23T12:08:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1b74bffa"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0myv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11078211_*|*_5_*:*_1_*:*_0"}], "description": "For some releases, the code base will need to be merged down to stable.\n\n*NOTE:* This is usually only during a x.y.0 release, but even then it may have already been done. If it doesn't apply, close this ticket.\n\n\nAssuming you have origin (your remote) and upstream (puppetlabs remote), the commands will look something like this:\n{noformat}\ngit fetch upstream\ngit rebase upstream/master\n\ngit checkout stable\ngit rebase upstream/stable\n\ngit merge master --no-ff --log\n{noformat}\n\nOnce that looks good:\n{noformat}\ngit push origin\ngit push upstream\n{noformat}\n\nAfter merging to stable, the jobs on jenkins may require updates (spec, acceptance, etc) when you merge master into stable. Please ensure that the jenkins jobs are updated if necessary.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53548", "fixedVersions": [], "id": "53548", "issueType": "Sub-task", "key": "HI-404", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T15:13:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Merge master into stable", "timeSpent": "PT0S", "updated": "2015-06-23T15:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:08:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1c071ea1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0myn:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10911237_*|*_5_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/HI/version.rb or project.clj to correct version.\n\n  * Commit the updated version file.\n    * e.g) commit -m \"(packaging) Update FACTERVERSION to 1.7.3\".\n  * If any merging needs to happen (i.e. master into stable/stable into master), it can now happen (different subtask).\n  * Once this is done, hand the SHA to be built to RelEng to be tagged.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54072", "fixedVersions": [], "id": "54072", "issueType": "Sub-task", "key": "HI-403", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T15:10:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Update version number in source", "timeSpent": "PT0S", "updated": "2015-06-23T15:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [], "components": [], "created": "2015-06-23T12:08:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@140e1056"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0myf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10873875_*|*_5_*:*_1_*:*_0"}], "description": "Ensure all tickets targeted at the release have a corresponding commit\n  * git log <old tag>..<new tag>\n  * This time, look through tickets targeted at this release in JIRA, and compare it to the commit log, looking for the corresponding numbers\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release) There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54038", "fixedVersions": [], "id": "54038", "issueType": "Sub-task", "key": "HI-402", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T15:10:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-06-23T15:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "This step is handled in the does every commit have a jira ticket when using ticketmatch", "created": "2015-06-23T13:01:00.000000"}], "components": [], "created": "2015-06-23T12:08:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2fd971a2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0my7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3133720_*|*_6_*:*_1_*:*_0"}], "description": "Ensure all tickets referenced in the commit log have a bug targeted at the release\n\n  * git log <old tag>..<new tag>\n  * look through, and make sure that if there is a JIRA ticket number referenced in any of the commits, that ticket is targeted at the release\n  * Also, make sure the code itself is sane, that you understand why the change was made, etc. etc.\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release). There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53921", "fixedVersions": [], "id": "53921", "issueType": "Sub-task", "key": "HI-401", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T13:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-06-23T13:01:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "SHA 555f358a1dcd6064f12a8a68ef3455fca4dc9e81 is ready to become HI 3.0.1", "created": "2015-06-23T16:44:00.000000"}], "components": [], "created": "2015-06-23T12:08:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@48461e90"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0mxz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14299040_*|*_5_*:*_1_*:*_0"}], "description": "If there are any version dependencies expressed in the code base, make sure these are up to date. For Puppet, make sure the shas used to build the MSI are correct. For Puppet-Server, make sure all references to the puppet version are correct.\n\nAll tests (spec, acceptance) should be passing on all platforms for both stable & master.\n\n  * If a new platform has been added, make sure that platform has acceptance testing, new features have decent coverage, etc. etc.\n  * If the release is going to be cut from a sha, rather than the head of a branch, make sure that sha specifically has gone through spec/acceptance/etc. tests\n  * Move all items that should be moved from Ready for CI to Ready for Review\n\nHave all tickets been resolved (passed Functional Review)? If not please add any missing tickets to the current sprint's board.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%223.0.1%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53884", "fixedVersions": [], "id": "53884", "issueType": "Sub-task", "key": "HI-400", "labels": [], "originalEstimate": "PT0S", "parent": "53859", "parentSummary": "hiera 3.0.1 2015-06-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-23T16:07:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLONE - Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-06-23T16:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Links for JIRA queries:\nIntroduced in HI 3.0.1 https://puppet.atlassian.net/issues/?filter=14800\nFixed in HI 3.0.1 https://puppet.atlassian.net/issues/?filter=14802", "created": "2015-06-23T15:54:00.000000"}], "components": [], "created": "2015-06-23T12:08:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@fd85af6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyoq1z:"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Found"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "New release ticket since we had to roll version to fix blocking bug"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_151304100_*|*_6_*:*_1_*:*_0"}], "description": "hiera 3.0.0 2015-06-17 Release\n\nWhen working through this ticket, add it to the board and then keep it in the Ready for Engineering column.\nMove the subtasks to In Progress when you are working on them and Resolved when you have completed them.\nIn general subtasks should only be moved to Ready for Engineering when they are ready to be worked on. For some assignees this is their cue to start working on release-related items.\n\n * The first set of tickets are assigned to the developer, those can all be converted to Ready for Engineering and you can start working through them.\n * Only when those are done should you move the \"Prepare notes\" and \"Tag release/create packages\" tasks to Ready for Engineering. Ping those assigned to move forward.\n * When you hear back for \"Tag Release/create packages\", you should move \"Smoke test packages\" to Ready for Engineering or In Progress if you are ready.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53859", "fixedVersions": [], "id": "53859", "issueType": "Task", "key": "HI-399", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-06-25T06:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera 3.0.1 2015-06-23 Release", "timeSpent": "PT0S", "updated": "2015-06-25T14:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:90912365-e572-43e2-b38b-8dff3f7860b9", "body": "This feature would be really very useful. Ansible has it and I'm really missing it Puppet.\n\nLet's say that we have the following two YAML files:\n\n{noformat}\n---\n\naaa:\n  - 1\n  - 2\n\n---\n\nccc: \"%{hiera(aaa)}\"\n{noformat}\n\nThe {{ccc}} is currently only a string:\n\n{noformat}\nccc: \"[1, 2]\"\n{noformat}\n\nBut it would be really great if it would be real array:\n\n{noformat}\nccc: [1, 2]\n{noformat}\n\nEven better would be if the interpolation would support operations from the set theory (union, intersection, difference, ...). Let's see the example for union operation:\n\n{noformat}\n---\n\nint1: 1\nint2: 2\nfloat1: 1.1\nfloat2: 2.1\nstring1: abc\nstring2: xyz\narray1: [1,2,3]\narray2: [4,5,6]\nhash1: {a: 1, b: 2}\nhash2: {b: 3, c: 4}\n\n---\n\n# Note: \"a + b\" could be \" a.union(b)\"\nresult_int: \"%{hiera(int1) + hiera(int2)}\"\nresult_float1: \"%{hiera(float1) + hiera(float2)}\"\nresult_float2: \"%{hiera(float1) + hiera(int2)}\"\nresult_string1: \"%{hiera(string1) + hiera(string2)}\"\nresult_string2: \"%{hiera(string1) + hiera(int1)}\"\nresult_string3: \"%{hiera(string1) + hiera(float1)}\"\nresult_array: \"%{hiera(array1) + hiera(array2)}\"\nresult_hash: \"%{hiera(hash1) + hiera(hash2)}\"\n#result_error1: \"%{hiera(array1) + hiera(hash1)}\"\n#result_error2: \"%{hiera(hash1) + hiera(int1)}\"\n#result_error3: \"%{hiera(hash1) + hiera(float1)}\"\n#result_error4: \"%{hiera(hash1) + hiera(string1)}\"\n#result_error5: \"%{hiera(array1) + hiera(int1)}\"\n#result_error6: \"%{hiera(array1) + hiera(float1)}\"\n#result_error7: \"%{hiera(array1) + hiera(string1)}\"\n{noformat}\n\nThe result should be:\n\n{noformat}\nresult_int: 2\nresult_float1: 3.2\nresult_float2: 2.2\nresult_string1: \"abcxyz\"\nresult_string2: \"abc1\"\nresult_string3: \"abc1.1\"\nresult_array: [1, 2, 3, 4, 5, 6]\nresult_hash: {a: 1, b: 3, c: 4}\n## The following should result in error\n#result_error1: ERROR\n#result_error2: ERROR\n#result_error3: ERROR\n#result_error4: ERROR\n#result_error5: ERROR\n#result_error6: ERROR\n#result_error7: ERROR\n{noformat}\n\nI hope this get some attention as it would allow more flexible approach to configuration file creation based on YAML input (see https://github.com/picotrading/config-encoder-macros).", "created": "2015-09-15T14:27:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I would like to use Puppet's interpolation logic instead of hiera's - i.e. use any puppet logic in the interpolation expression. I would also like to be able to evaluate a non string value as the value of a key - e.g. bind an expression that produces a hash, say a hash with a couple of distinct keys that are being looked up in turn.\n\nA big question when doing this - isn't it better to just do the bindings in puppet logic? In the new 4.x Data in Modules support, a function written in the Puppet Language can serve as the provider of data. Now you have the full language to your disposal to compose values.\n\nUnfortunately, the current hiera implementation is not easily changed since so much of the implementation is done in the backends, and the APIs are constraining what can be done. There is more flexibility in the new implementation for Data in Modules (planned to be included in Puppet 4.3.0) - but the first goal is to be 100% compatible with hiera data files. I can imagine new backends with more advanced capabilities as the new implementation has far better control over configuration of the hierarchy and backends.\n\n", "created": "2015-09-15T16:15:00.000000"}, {"author": "557058:90912365-e572-43e2-b38b-8dff3f7860b9", "body": "I don't know how advance is the new implementation for Data in Modules but I think it's much simpler to model the config file in YAML file than parametrize it in the Puppet module. Imagine a config file which has 250 possible options. Then imagine a Puppete module which would parametrize all the 250 options and generate the final config file via template. Such module would be pretty big. Therefore is simpler to use a data structure describing the config file and use some generic template to produce the final config file. This is how the config macros work (https://github.com/picotrading/config-encoder-macros). Simply take a YAML file, pass it through a template and get the final config file (YAML + template = config file).\n\nLet's describe such config file with this simple data structure:\n\n{noformat}\n---\n\nconfig:\n  section1:\n    param1: aaa\n    param2: bbb\n  section2:\n    param3: ccc\n  section3:\n    param4: ddd\n{noformat}\n\nIf you apply the {{ini_encode_macro.erb}} template on the above YAML data, you get this:\n\n{noformat}\n[section1]\nparam1 = aaa\nparam2 = bbb\n\n[section2]\nparam3 = ccc\n\n[section3]\nparam4 = ddd\n{noformat}\n\nBut you don't want to force the user to copy the whole data structure every time a change is needed. You want to allow him to change only the portion he wants to change. For example remove the {{section1}}, change the parameter {{param3}} and add new {{section4}}. For that you need to split the data structure into multiple pieces:\n\n{noformat}\n---\n\nsecrion1_param1: aaa\nsecrion1_param2: bbb\nsecrion2_param3: ccc\nsecrion3_param4: ddd\n\nsection1:\n  param1: \"%{hiera(section1_param1)}\"\n  param2: \"%{hiera(section1_param2)}\"\n\nsection2:\n  param3: \"%{hiera(section2_param3)}\"\n\nsection3:\n  param4: \"%{hiera(section3_param4)}\"\n\nconfig:\n  section1: \"%{hiera(section1)}\"\n  section2: \"%{hiera(section2)}\"\n  section3: \"%{hiera(section3)}\"\n{noformat}\n\nAnd the user can create the desired config file by overriding the specific variables in another Hiera file like this:\n\n{noformat}\n# Overriding the param3 value\nsection2_param3: xyz\n\n# New parameter for the section4\nsection4_param5: opq\n\n# New section\nsection4:\n  param5: \"%{hiera(section4_param5)}\"\n\n# New final config\nconfig:\n  section2: \"%{hiera(section2)}\"\n  section3: \"%{hiera(section3)}\"\n  section4: \"%{hiera(section4)}\"\n{noformat}\n\nThe final config file will look like this:\n\n{noformat}\n[section2]\nparam3 = xyz\n\n[section3]\nparam4 = ddd\n\n[section4]\nparam5 = opq\n{noformat}\n\nThis provides a very flexible framework to allow the user to \"configure everything\" without even touching the Puppet module. The Puppet module is there only to read the data structure and turn it into the final config file.", "created": "2015-09-15T17:20:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "My point was simply that there is a spectrum from static data - to computed data (filtered, transformed, merged, generated, processed). At some point, if stuffing to much logic into a data format you reach a wall of complexity. Going the other way, it is more painful to use logic to describe straight forward data structures. The issues IMO is using the best tool for the job at hand and combining the results. That is what I hope we are able to achieve with \"Data in Modules\" as it is being built out.", "created": "2015-09-15T18:38:00.000000"}, {"author": "557058:90912365-e572-43e2-b38b-8dff3f7860b9", "body": "Please correct me if I'm wrong, but the \"Data in Modules\" only allows to select a specific data binding implementation on per-module/environment basis. As the configuration management starts to be the central point of the automation, the tendency in the industry is to let anybody in the company to use it and contribute to it. Obviously not everybody is a developer so it's much easier for them to modify data files than to write their own modules. There is plenty of modules (e.g. {{garethr/docker}}) which allow to use Hiera as one of the ways how to control the module (e.g. {{docker::run_instance::instance}} data structure). Therefore I think it would be a good idea to provide more features in the data part of the stack to allow to do something like I have described above.", "created": "2015-09-17T02:08:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I am also in favor of adding more power to how you can bind data - it inevitably means adding more logic to your data", "created": "2015-09-17T18:36:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We now have hiera 5 where backends are just functions and you can bind and deal with any data type as you please. Closing this as Won't Do as the HI project is for the deprecated hiera 3 version. (Hiera 5 lives in the PUP project as it is an integral part of puppet now).", "created": "2017-08-22T08:29:00.000000"}], "components": [], "created": "2015-06-23T04:24:00.000000", "creator": "557058:807b6d61-09df-444f-afe7-119c0201b0b4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6af1a931"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0mlz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Sep/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_68357149852_*|*_6_*:*_1_*:*_0"}], "description": "Per the documentation, Hiera only allows the interpolation of strings - see http://docs.puppetlabs.com/hiera/1/variables.html#interpolation-tokens for details. It would be very useful if this was opened up to more data structures, such as arrays.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53547", "fixedVersions": [], "id": "53547", "issueType": "Improvement", "key": "HI-398", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:807b6d61-09df-444f-afe7-119c0201b0b4", "resolution": "Won't Do", "resolutionDate": "2017-08-22T08:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow interpolation of more than just strings in Hiera", "timeSpent": "PT0S", "updated": "2017-08-22T08:30:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Hiera merges its configuration from hiera.yaml with its hard-coded defaults, giving precedence to hiera.yaml, see https://github.com/puppetlabs/hiera/blob/master/lib/hiera/config.rb#L34.\n\nSo this is only an issue if there isn't a hiera.yaml, which I think is less common. For example, you can't run hiera standalone without a hiera,yaml\n\n{noformat}\n$ bundle exec hiera testkey\nFailed to start Hiera: RuntimeError: Config file /etc/puppetlabs/code/hiera.yaml not found\n{noformat}\n\nI think the confusion is because when hiera is running in the context of puppet, puppet will tell hiera where to look for its hiera.yaml. When running as a non-root user, this will be {{\\~/.puppetlabs/etc/code/hiera.yaml}} So for example, if you've installed AIO, and run puppet as non-root, then you'll have the correct {{/etc/puppetlabs/code/hiera.yaml}}, but won't have one in {{\\~/.puppetlabs}} and you could run into this issue. And this is why we should not be relying on an external configuration file to set the default values!\n\nTo add to the confusion, hieradata is always looked up in the global context {{/etc/puppetlabs/code/environments/<environment>/hieradata}} when running hiera standalone and in the context of puppet.\n\nHere's some output showing the behavior I describe. Note I have to set {{HIERA_LOCATION}} and update puppet's gem dependencies (PUP-4777) to allow puppet to run with hiera 3.0 from source:\n\nUsing the default hiera.yaml in my per-user location:\n\n{noformat}\n0 ~/work/hiera (stable)  $ git rev-parse HEAD\n84bfb43a22d1ee535b1213828090a754d4373c36\n0 ~/work/hiera (stable)  $ cd ../puppet\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ cat ~/.puppetlabs/etc/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::trusted.certname}\"\n  - common\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/environments/%{environment}/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\environments\\%{environment}\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n{noformat}\n\nAnd I created per-node and common yaml files:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ tree /etc/puppetlabs/code/\n/etc/puppetlabs/code/\n\u2514\u2500\u2500 environments\n    \u2514\u2500\u2500 production\n        \u2514\u2500\u2500 hieradata\n            \u251c\u2500\u2500 common.yaml\n            \u2514\u2500\u2500 nodes\n                \u2514\u2500\u2500 arcturus.yaml\n\n4 directories, 2 files\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ head  /etc/puppetlabs/code/environments/production/hieradata/nodes/arcturus.yaml\n---\ntestkey: from_arcturus\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ head  /etc/puppetlabs/code/environments/production/hieradata/common.yaml\n---\ntestkey: from_common\n{noformat}\n\nWhen using the per-node host, it resolves correctly:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname arcturus -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_arcturus\nNotice: Compiled catalog for arcturus in environment production in 0.31 seconds\nNotice: Applied catalog in 0.02 seconds\n{noformat}\n\nWhen using someotherhost, it resolves using common as expected:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname someoneelse -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_common\nNotice: Compiled catalog for someoneelse in environment production in 0.31 seconds\nNotice: Applied catalog in 0.01 seconds\n{noformat}\n\nIf I remove the per-user hiera.yaml, then it falls back to the defaults in code, and triggers the bug described here:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ rm ~/.puppetlabs/etc/code/hiera.yaml\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname arcturus -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_common\nNotice: Compiled catalog for arcturus in environment production in 0.31 seconds\nNotice: Applied catalog in 0.02 seconds\n{noformat}", "created": "2015-06-22T23:50:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "h3. Before Fix\n\nWith default hiera.yaml, it correctly uses node-specific hierarchy:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ cat ~/.puppetlabs/etc/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::trusted.certname}\"\n  - common\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/environments/%{environment}/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\environments\\%{environment}\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname arcturus -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_arcturus\nNotice: Compiled catalog for arcturus in environment production in 0.33 seconds\nNotice: Applied catalog in 0.02 seconds\n{noformat}\n\nWhen default hierarchy is removed, uses the incorrect \"common\" hierarchy:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ cat ~/.puppetlabs/etc/code/hiera.yaml\n---\n:backends:\n  - yaml\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/environments/%{environment}/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\environments\\%{environment}\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname arcturus -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_common\nNotice: Compiled catalog for arcturus in environment production in 0.33 seconds\nNotice: Applied catalog in 0.02 seconds\n{noformat}\n\nWhen default hiera.yaml is removed, uses the incorrect \"common\" hierarchy:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ rm  ~/.puppetlabs/etc/code/hiera.yaml\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname arcturus -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_common\nNotice: Compiled catalog for arcturus in environment production in 0.33 seconds\nNotice: Applied catalog in 0.02 seconds\n{noformat}\n\nh3. With Fix\n\nIt correctly uses node-specific hierarchy in all cases.\n\nWith default hiera.yaml:\n\n{noformat}\n##\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ cat ~/.puppetlabs/etc/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::trusted.certname}\"\n  - common\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/environments/%{environment}/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\environments\\%{environment}\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname arcturus -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_arcturus\nNotice: Compiled catalog for arcturus in environment production in 0.36 seconds\nNotice: Applied catalog in 0.02 seconds\n{noformat}\n\nWhen default hierarchy is removed:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ cat ~/.puppetlabs/etc/code/hiera.yaml\n---\n:backends:\n  - yaml\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/environments/%{environment}/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\environments\\%{environment}\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname arcturus -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_arcturus\nNotice: Compiled catalog for arcturus in environment production in 0.33 seconds\nNotice: Applied catalog in 0.02 seconds\n{noformat}\n\nWhen default hiera.yaml is removed:\n\n{noformat}\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ rm  ~/.puppetlabs/etc/code/hiera.yaml\n0 ~/work/puppet (ticket/stable/PUP-4777-bump-hiera-dependency)  $ be puppet apply --certname arcturus -e \"notice( hiera( 'testkey' ))\"\nNotice: Scope(Class[main]): from_arcturus\nNotice: Compiled catalog for arcturus in environment production in 0.38 seconds\nNotice: Applied catalog in 0.02 seconds\n{noformat}", "created": "2015-06-23T12:52:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "on ubuntu14.04 at hiera stable SHA: 555f358a1\n\nas erict user:\n{code}\n[erict@aub39lx7n34mkbo ~]$ ls .puppetlabs/etc/\ncode  puppet\n[erict@aub39lx7n34mkbo ~]$ ls .puppetlabs/etc/code/\nenvironments\n[erict@aub39lx7n34mkbo ~]$ cat /etc/puppetlabs/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::trusted.certname}\"\n  - common\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/environments/%{environment}/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\environments\\%{environment}\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n[erict@aub39lx7n34mkbo ~]$ cat /etc/puppetlabs/code/environments/production/hieradata/nodes/aub39lx7n34mkbo.delivery.puppetlabs.net.yaml\ncertkey: 'on production using trusted node data'\n[erict@aub39lx7n34mkbo ~]$ puppet apply -e \"notice( hiera( 'certkey' ))\"\nNotice: Scope(Class[main]): on production using trusted node data\nNotice: Compiled catalog for aub39lx7n34mkbo.delivery.puppetlabs.net in environment production in 0.36 seconds\nNotice: Applied catalog in 0.01 seconds\n[erict@aub39lx7n34mkbo ~]$ cat /etc/puppetlabs/code/environments/production/hieradata/common.yaml\ntestkey: 'from common in /etc/puppetlabs/code/hieradata'\n{code}", "created": "2015-06-23T15:26:00.000000"}], "components": [], "created": "2015-06-22T16:41:00.000000", "creator": "623c08e1562ab90069f8aed4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@70cc8d25"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Highest Test Level", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Unit"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0mbr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_7934090_*|*_1_*:*_1_*:*_1561397_*|*_10007_*:*_1_*:*_71158914_*|*_5_*:*_1_*:*_90412830_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_3363422"}], "description": "HI-374 was about changing two things: the default hierarchy, and the default datadir for the yaml and json backends. \n\nBoth of those things were represented in two places: the actual coded defaults, and the default hiera.yaml file laid down by the installer. \n\next/hiera.yaml was updated, and [the coded defaults were changed for the datadir|https://github.com/puppetlabs/hiera/pull/268/files#diff-3d3d915f7338e98f48ea7edcb672236dL32], but the coded hierarchy defaults were [left untouched|https://github.com/puppetlabs/hiera/blob/master/lib/hiera/config.rb#L13] and the default hierarchy is still \"common\". \n\nThis should block any public release of 3.0.x. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53674", "fixedVersions": ["HI 3.0.1"], "id": "53674", "issueType": "Bug", "key": "HI-397", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Blocker", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c08e1562ab90069f8aed4", "resolution": "Fixed", "resolutionDate": "2015-06-23T16:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Default hierarchy was never updated per HI-374", "timeSpent": "PT0S", "updated": "2015-06-24T17:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The {{hiera}} CLI is deprecated in favor of {{lookup}} CLI. Please use it instead. All of hiera 3 (including the {{hiera}} CLI is deprecated and will not get any new features.", "created": "2017-08-22T08:44:00.000000"}], "components": [], "created": "2015-06-22T14:47:00.000000", "creator": "623c08e1562ab90069f8aed4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2f67f342"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0m3b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_68407078364_*|*_6_*:*_1_*:*_0"}], "description": "The new default hierarchy includes the {{::trusted.certname}} variable, which is a member of a hash. The Hiera CLI provides no way to specify non-string variables as part of the command, since it uses a kind of na\u00efve regex to parse variables:\n\n{code}\n  ARGV.each do |arg|\n    if arg =~ /^(.+?)=(.+?)$/\n      options[:scope][$1] = $2\n      ...\n{code}\n\nThe two ways available today for testing Hiera data are to use a --json SCOPE argument or to do something like {{puppet apply --certname magpie.lan -e \"notice(hiera('testkey'))\"}}. The CLI is kind of dead at this point. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53919", "fixedVersions": [], "id": "53919", "issueType": "Bug", "key": "HI-396", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c08e1562ab90069f8aed4", "resolution": "Won't Fix", "resolutionDate": "2017-08-22T08:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera CLI can't check data for a node using new default hierarchy", "timeSpent": "PT0S", "updated": "2017-08-22T08:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:172ec344-6cd8-47c4-b385-f0d4e4e829ea", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Does it work from within a manifest? ", "created": "2015-06-22T04:27:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:172ec344-6cd8-47c4-b385-f0d4e4e829ea", "body": "What do you mean?\n\n/etc/puppet/manifests or something else?\n\nI shown tests in bash, on puppet master for fast example.\n\nIf i create and use module like it, i got test-def on FAIL-datadir and normal test::text2 on OK-datadir.\n\n{code}\nclass  test {\nfile { '/tmp/puppetenv':\n   path   => '/tmp/puppetenv',\n   ensure => file,\n   content => hiera(\"test::text2\", \"test-def\")\n }\n}\n{code}", "created": "2015-06-22T05:00:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Come to think of it, {{environmentpath}} is multi valued (an array) - as the name suggests", "created": "2015-06-22T08:50:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:172ec344-6cd8-47c4-b385-f0d4e4e829ea", "body": "Not work. As you can see both environmentpath and environment is empty.\nI tried set for tests over puppet parameters like \"%{::server_datadir\" but they all not readed too.\n\nOk, i just used :datadir: \"/etc/puppet/hieradata\", created symlinks to each \"$environment/hieradata\", hashes for each env-s in yaml files. But  it uncomfortably.\n", "created": "2015-06-23T01:07:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I wonder if this may actually be a problem of not loading the hiera.yaml file that you expect and that you get a config that almost works. That is, when you use values in a file that you change, it looks like it works because you are using default values. See HI-397 for description of when a missing hiera config under ~/.puppet can cause problems.\n\nVerify that your config file is actually loaded by using some unique fixed paths, or make a deliberate error to see if it then crashes.", "created": "2015-06-23T07:12:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:172ec344-6cd8-47c4-b385-f0d4e4e829ea", "body": "My hiera.yaml\n{noformat}\n---\n:hierarchy:\n    - \"%{::clientcert}\"\n    - \"%{::custom_location}\"\n    - \"nodes/%{::fqdn}\"\n    - \"virtual/%{::virtual}\"\n    - common\n    - \"%{::environment}\"\n\n:backends:\n    - yaml\n\n:yaml:\n    :datadir: \"/etc/puppet/hieradata\"\n#     :datadir: \"/etc/puppet/environments/%{::environment}/hieradata\"\n{noformat}\n\nIt work ok and made 3 tests:\n\n{noformat}\n#hiera test::text2 \ncommon-hiera\n\n# hiera test::text2 ::fqdn=modtest --debug\nDEBUG: Tue Jun 23 09:22:42 -0400 2015: Hiera YAML backend starting\nDEBUG: Tue Jun 23 09:22:42 -0400 2015: Looking up test::text2 in YAML backend\nDEBUG: Tue Jun 23 09:22:42 -0400 2015: Looking for data source nodes/modtest\nDEBUG: Tue Jun 23 09:22:42 -0400 2015: Found test::text2 in nodes/modtest\nmodtest-br01-hiera\n{noformat}\n\nNow set     :datadir: \"/etc/puppet/hieradata_wrong\"\n\n{code}\n# hiera test::text2 --debug\nDEBUG: Tue Jun 23 09:24:13 -0400 2015: Hiera YAML backend starting\nDEBUG: Tue Jun 23 09:24:13 -0400 2015: Looking up test::text2 in YAML backend\nDEBUG: Tue Jun 23 09:24:13 -0400 2015: Looking for data source common\nDEBUG: Tue Jun 23 09:24:13 -0400 2015: Cannot find datafile /etc/puppet/hieradata_wrong/common.yaml, skipping\nnil\n{code}\n\nAs we can see - config readed.", "created": "2015-06-23T07:31:00.000000"}], "components": [], "created": "2015-06-22T01:28:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:172ec344-6cd8-47c4-b385-f0d4e4e829ea", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b05e0ff"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0lfb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jun/15"}], "description": "{code}\n# puppet config print| grep environment\nenvironment = br01\n...\nenvironmentpath = /etc/puppet/environments\n\n# cat /etc/puppet/hieradata/common.yaml | grep test::text2\ntest::text2: br01-hiera\n{code}\n\nHere is OK:\n{code}\n# cat /etc/puppet/hiera.yaml | grep datadir\n\t:datadir: \"/etc/puppet/environments/br01/hieradata\"\n\n# hiera test::text2 --debug\nDEBUG: Mon Jun 22 03:22:20 -0400 2015: Hiera YAML backend starting\nDEBUG: Mon Jun 22 03:22:20 -0400 2015: Looking up test::text2 in YAML backend\nDEBUG: Mon Jun 22 03:22:20 -0400 2015: Looking for data source common\nDEBUG: Mon Jun 22 03:22:20 -0400 2015: Found test::text2 in common\nbr01-hiera\n{code}\nBut here is FAIL:\n{code}\n# cat /etc/puppet/hiera.yaml | grep datadir\n    :datadir: \"%{::environmentpath}/%{::environment}/hieradata\"\n\nor \t\n# cat /etc/puppet/hiera.yaml | grep datadir\n    :datadir: \"%{environmentpath}/%{environment}/hieradata\"\n\n# hiera test::text2 --debug\nDEBUG: Mon Jun 22 03:25:47 -0400 2015: Hiera YAML backend starting\nDEBUG: Mon Jun 22 03:25:47 -0400 2015: Looking up test::text2 in YAML backend\nDEBUG: Mon Jun 22 03:25:47 -0400 2015: Looking for data source common\nDEBUG: Mon Jun 22 03:25:47 -0400 2015: Cannot find datafile //hieradata/common.yaml, skipping\nnil\n{code}\n\nWhat wrong ?", "environment": "Centos 6.5 x86_64\npuppet 3.8.1\nhiera 1.3.4 \nruby 1.8.7 (2013-06-27 patchlevel 374)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53883", "fixedVersions": [], "id": "53883", "issueType": "Bug", "key": "HI-395", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:172ec344-6cd8-47c4-b385-f0d4e4e829ea", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera can't read puppet config", "timeSpent": "PT0S", "updated": "2015-06-23T07:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3652d053"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0epb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1203037971_*|*_6_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%223.0.0%22%20AND%20status%20%3D%20Resolved\n\nThere is a bulk edit at the top (a gear with the word \"Tools\"). Should you decide to take this route:\n  * Select Bulk Change - All # issues\n  * Step 1 - choose all relevant issues (likely all of them)\n  * Step 2 - Select \"Transition Issues\"\n  * Step 3 - Select \"Closed\"\n  * Step 4 - Select \"Fixed\" in Change Resolution.\n  * View what is about to change and confirm it. Then commit the change.\n\nDependencies:\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53978", "fixedVersions": [], "id": "53978", "issueType": "Sub-task", "key": "HI-394", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@279172bd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0ep3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1203044748_*|*_6_*:*_1_*:*_0"}], "description": "  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]: update the release google spreadsheet.\n  * Update the MSI build targets in the Puppet repo in ext/build_defaults.yaml. This needs to be done for any projects that are to get into the MSI (facter and hiera as of 8/2014)\n  * Send the drafted release notes email.\n    * If final send to puppet-announce and specific distribution lists (e.g. puppet to puppet-users & puppet-dev).\n    * If this release has security implications, also send the release announcement to puppet-security-announce\n  * Make a PSA on IRC letting those kiddos know about the new release.\n    * Something along the lines of \"PSA: facter 1.7.3 now available\"\n\nDependencies:\n  * Prepare long form release notes and short form release story\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53805", "fixedVersions": [], "id": "53805", "issueType": "Sub-task", "key": "HI-393", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "623c08e1562ab90069f8aed4", "body": "Docs are live, but latest is still pinned to 2.0. We can un-pin on release day once we've had the go/no-go. ", "created": "2015-06-22T17:54:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3cf874ad"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0eov:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1127114629_*|*_5_*:*_1_*:*_75936696_*|*_6_*:*_1_*:*_0"}], "description": "Push the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53754", "fixedVersions": [], "id": "53754", "issueType": "Sub-task", "key": "HI-392", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@f8ce807"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0eon:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1203055304_*|*_6_*:*_1_*:*_0"}], "description": "Push packages\n  * run `rake pl:jenkins:uber_ship`\n    * You will need the keys to the castle (aka the passphrase) for this to work.\n    * Don't forget to make sure everything looks like it's in the correct folder, the pkgs dir has been cleared out, and that you are shipping for all expected platforms.\n    * Get a *second set of RelEng eyes* on the packages that are about to be shipped to make sure everything looks a-okay.\n    * If you're shipping a gem you need to make sure you have a rubygems account, are an owner of that project, and have a gem config file.\n    * If you're shipping puppet you need to sign the MSI file for Windows. This is a manual process and the ship task doesn't ship or build the msi so talk to Moses or Haus for more details. This file also needs to be manually signed.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53673", "fixedVersions": [], "id": "53673", "issueType": "Sub-task", "key": "HI-391", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "This is done at tag creation time for the puppet-agent components, so closing this as Won't Fix.", "created": "2015-06-09T16:52:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ffc75e3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0eof:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_183817_*|*_6_*:*_2_*:*_1202877662"}], "description": "The development team is responsible for updating the stable/master branches as necessary.\nThis will be done after the version bump in version.rb.\n\nDependencies:\n  * Go / No Go meeting (except where it's required to push the tag to build packages - MSIs)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53622", "fixedVersions": [], "id": "53622", "issueType": "Sub-task", "key": "HI-390", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-09T16:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "holding off on go/no-go until June 22", "created": "2015-06-15T15:03:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@26b1924"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0eo7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1203067327_*|*_6_*:*_1_*:*_0"}], "description": "This should happen Monday-Thursday, before 4pm. We should not be shipping anything after 4:00 PM or on a Friday both for our users, and because shipping takes time.\n\nGet a yes/no for the release from dev, docs, product, qa, releng.\n\nThis meeting is informal, over chat, and usually happens right before packages are pushed.\nKeep in mind we typically do not ship releases in the evening and we don't ship on Friday if the release is a final release.\n\nDependencies:\n  * Smoke testing\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53546", "fixedVersions": [], "id": "53546", "issueType": "Sub-task", "key": "HI-389", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages available at http://builds.puppetlabs.lan/hiera/3.0.0/\n\nNote, this is a full set of packages, but with the Hiera 3.0.0 release, we will begin only shipping gem/tar artifacts of hiera. The code will also be available in platform specific puppet-agent packages. That, and I believe that we've landed on the idea that we no longer need to smoke test for these releases since we now have a full CI pipeline associated with the puppet-agent packages", "created": "2015-06-15T12:23:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hiera 3.0.0 will be smoketested as part of the AIO packaging. No smoke test required.", "created": "2015-06-15T14:36:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5c063875"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0enz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_502397544_*|*_5_*:*_1_*:*_692652296_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_8018126"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.\n\nIn general this should happen on a variety of platforms, i.e. one or two each of kind of package we create (i.e., gem, dmg, msi, deb, rpm, etc).\n\nFor Puppet, our acceptance suite now tests service scripts, and on debian, a passenger master.  Manual smoke testing can therefore be limited to other package formats than deb and rpm.\n\nLighter testing of Z releases is acceptable.\n\n  * Add a link to the Packages repository that you receive from the \"Tag and create packages\" subtask\n  * Ping folks on your team for help with different platforms.\n  * When you pick up a platform, please leave a comment below that you are testing it. When it looks good, leave another comment, preferably with a code snippet showing the commands executed and their output.\n  * When all platforms picked have been smoke tested, move this ticket to done.\n\nIMPORTANT: Please edit the description of this ticket and remove \"Example:\" below. Edit the platforms to smoke test on, and the smoke test procedure.\n\nExample:\nSmoke test platforms:\n  * pick some platforms such as\n  * Windows 2003/2008/2012 (msi)\n  * Solaris 10/11 (tarball or gem?)\n  * OSX (dmg)\n  * (Note if you are smoke testing Puppet and pick an rpm or deb based platform, concentrate on testing a gem or tarball, since acceptance should have adequately smoke tested those packages.)\n    * RHEL/CentOS 5/6/7\n    * Fedora 19/20\n    * Debian 6/7\n    * Ubuntu 10.04/12.04/14.04\n\nSmoke test procedure:\n  * Start/stop/restart a master (if the platform supports that)\n  * Start/stop/restart an agent\n  * Help/man\n  * Write and run some manifests\n\nDependencies:\n  * Tag and create packages\n  * For Windows MSIs - Push tag\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54071", "fixedVersions": [], "id": "54071", "issueType": "Sub-task", "key": "HI-388", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The SHA to release as Hiera 3.0.0 is 4cf2d39f36cc91740f0ca6ed1b89fec69f98c5da", "created": "2015-06-12T17:23:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages available at http://builds.puppetlabs.lan/hiera/3.0.0/\n\nNote, this is a full set of packages, but with the Hiera 3.0.0 release, we will begin only shipping gem/tar artifacts of hiera. The code will also be available in platform specific puppet-agent packages.", "created": "2015-06-15T12:22:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@70aeb847"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0enr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_501847932_*|*_3_*:*_1_*:*_539605_*|*_5_*:*_1_*:*_700683549_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] - Please add the SHA as a comment (this should be the commit which contains the newly updated version.rb)\n  * checkout the sha\n    * Make sure you are about to tag the correct thing\n  * Create the tag e.g.) git tag -s -u {GPG key} -m \"1.7.3\" 1.7.3\n    * You need to know the pass phrase for this to complete successfully. It's important that we make sure all releases are signed to verify authenticity.\n    * do push the tag live\n  * `git describe` will show you the tag. Make sure you're building what you think you're building.\n  * Make sure you look over the code that has changed since the previous release so we know what's going out the door.\n  * run `rake package:implode package:bootstrap pl:jenkins:uber_build` when you've verified what version you're building (this uses the latest version of the packaging repo to build the packages).\n  * If this is a puppet release, you have to build the windows msi. This is done using jenkins jobs on jenkins-legacy. You have to make sure you're targeting the correct versions of hiera, facter and puppet.\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] please add a comment with location of packages.\n  * Also create a PR against puppet-agent#aardwolf referencing the tag\n\nFor puppet, don't forget the msi packages. This usually comes after other smoke testing is going well since it does require the tag to be pushed live.\n\nDependencies:\n  * Every ticket before this except for release notes.\n\nNote this includes pushing the tag, so closing that separate step.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54036", "fixedVersions": [], "id": "54036", "issueType": "Sub-task", "key": "HI-387", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "623c08e1562ab90069f8aed4", "body": "Already live at http://docs.puppetlabs.com/hiera/3.0/release_notes.html", "created": "2015-06-22T17:55:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:49:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@78bd03bf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0enj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1127165760_*|*_5_*:*_1_*:*_75916723_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Is there a JIRA ticket targeted at the release for every commit?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53918", "fixedVersions": [], "id": "53918", "issueType": "Sub-task", "key": "HI-386", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Introduced in 3.0.0\n\nhttps://puppet.atlassian.net/issues/?filter=14552", "created": "2015-06-12T17:08:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Fixed in 3.0.0\n\nhttps://puppet.atlassian.net/issues/?filter=14553", "created": "2015-06-12T17:17:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:48:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@10990d7b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0enb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_259689149_*|*_3_*:*_1_*:*_1333394_*|*_5_*:*_1_*:*_942062914_*|*_6_*:*_1_*:*_0"}], "description": "This happens on Jira - we need to clean up the current release and prepare for the next release.\n  * Mark the version that's going out as \"Released\" in the Project Admin -> Versions panel.\n  * Create a version we can target future issues or issues that didn't make it into the current release.  (e.g. if we're releasing Facter 1.7.4, make sure there's a 1.7.5 version (or at least 1.7.x if there's isn't another bug release planned for the near future)\n  * Create a public pair of queries for inclusion in the release notes/announcement. These allow easy tracking as new bugs come in for a particular version and allow everyone to see the list of changes slated for the next release (Paste their URLs into the \"Release story\" ticket):\n    - 'project = XX AND affectedVersion = 'X.Y.Y', Save as \"Introduced in X.Y.Y\", click Details, add permission for Everyone\n    - 'project = XX AND fixVersion = 'X.Y.Z', Save as \"Fixes for X.Y.Z\", click Details, add permission for Everyone\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53976", "fixedVersions": [], "id": "53976", "issueType": "Sub-task", "key": "HI-385", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "stable merged to master at: 4cf2d39f36cc91740f0ca6ed1b89fec69f98c5da", "created": "2015-06-12T16:57:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:48:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@10fcaa20"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0en3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_259575911_*|*_3_*:*_1_*:*_111546_*|*_5_*:*_1_*:*_943405055_*|*_6_*:*_1_*:*_0"}], "description": "For some releases, the code base will need to be merged down to stable.\n\n*NOTE:* This is usually only during a x.y.0 release, but even then it may have already been done. If it doesn't apply, close this ticket.\n\n\nAssuming you have origin (your remote) and upstream (puppetlabs remote), the commands will look something like this:\n{noformat}\ngit fetch upstream\ngit rebase upstream/master\n\ngit checkout stable\ngit rebase upstream/stable\n\ngit merge master --no-ff --log\n{noformat}\n\nOnce that looks good:\n{noformat}\ngit push origin\ngit push upstream\n{noformat}\n\nAfter merging to stable, the jobs on jenkins may require updates (spec, acceptance, etc) when you merge master into stable. Please ensure that the jenkins jobs are updated if necessary.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53858", "fixedVersions": [], "id": "53858", "issueType": "Sub-task", "key": "HI-384", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "version updated to 3.0.0 at cb8334473e74be761a5fe916afa51c5159196d96 on master", "created": "2015-06-12T16:54:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:48:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7d54e06f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0emv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_259452145_*|*_3_*:*_1_*:*_120413_*|*_5_*:*_1_*:*_943522985_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/HI/version.rb or project.clj to correct version.\n\n  * Commit the updated version file.\n    * e.g) commit -m \"(packaging) Update FACTERVERSION to 1.7.3\".\n  * If any merging needs to happen (i.e. master into stable/stable into master), it can now happen (different subtask).\n  * Once this is done, hand the SHA to be built to RelEng to be tagged.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53804", "fixedVersions": [], "id": "53804", "issueType": "Sub-task", "key": "HI-383", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Only HI-374", "created": "2015-06-12T16:52:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:48:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5866dddf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0emn:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_259429045_*|*_5_*:*_1_*:*_943674080_*|*_6_*:*_1_*:*_0"}], "description": "Ensure all tickets targeted at the release have a corresponding commit\n  * git log <old tag>..<new tag>\n  * This time, look through tickets targeted at this release in JIRA, and compare it to the commit log, looking for the corresponding numbers\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release) There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53753", "fixedVersions": [], "id": "53753", "issueType": "Sub-task", "key": "HI-382", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There is only one ticket HI-374 (and some release maintenance).", "created": "2015-06-12T16:51:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:48:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@48569f91"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0emf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_259329685_*|*_3_*:*_1_*:*_70131_*|*_5_*:*_1_*:*_943708451_*|*_6_*:*_1_*:*_0"}], "description": "Ensure all tickets referenced in the commit log have a bug targeted at the release\n\n  * git log <old tag>..<new tag>\n  * look through, and make sure that if there is a JIRA ticket number referenced in any of the commits, that ticket is targeted at the release\n  * Also, make sure the code itself is sane, that you understand why the change was made, etc. etc.\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release). There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53732", "fixedVersions": [], "id": "53732", "issueType": "Sub-task", "key": "HI-381", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "there is only one ticket (HI-374)", "created": "2015-06-12T16:50:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed due to 3.0.0 release being supplanted by 3.0.1", "created": "2015-06-23T15:00:00.000000"}], "components": [], "created": "2015-06-09T16:48:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@77b31ee3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0em7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_259163274_*|*_3_*:*_1_*:*_165561_*|*_5_*:*_1_*:*_943778386_*|*_6_*:*_1_*:*_0"}], "description": "If there are any version dependencies expressed in the code base, make sure these are up to date. For Puppet, make sure the shas used to build the MSI are correct. For Puppet-Server, make sure all references to the puppet version are correct.\n\nAll tests (spec, acceptance) should be passing on all platforms for both stable & master.\n\n  * If a new platform has been added, make sure that platform has acceptance testing, new features have decent coverage, etc. etc.\n  * If the release is going to be cut from a sha, rather than the head of a branch, make sure that sha specifically has gone through spec/acceptance/etc. tests\n  * Move all items that should be moved from Ready for CI to Ready for Review\n\nHave all tickets been resolved (passed Functional Review)? If not please add any missing tickets to the current sprint's board.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%223.0.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53621", "fixedVersions": [], "id": "53621", "issueType": "Sub-task", "key": "HI-380", "labels": [], "originalEstimate": "PT0S", "parent": "53545", "parentSummary": "hiera 3.0.0 2015-06-17 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-06-23T15:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hiera 3.0.0 was replaced by Hiera 3.0.1 (HI-399) before being released.", "created": "2015-06-23T14:52:00.000000"}], "components": [], "created": "2015-06-09T16:48:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42874430"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0elz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1202655642_*|*_6_*:*_1_*:*_0"}], "description": "hiera 3.0.0 2015-06-17 Release\n\nWhen working through this ticket, add it to the board and then keep it in the Ready for Engineering column.\nMove the subtasks to In Progress when you are working on them and Resolved when you have completed them.\nIn general subtasks should only be moved to Ready for Engineering when they are ready to be worked on. For some assignees this is their cue to start working on release-related items.\n\n * The first set of tickets are assigned to the developer, those can all be converted to Ready for Engineering and you can start working through them.\n * Only when those are done should you move the \"Prepare notes\" and \"Tag release/create packages\" tasks to Ready for Engineering. Ping those assigned to move forward.\n * When you hear back for \"Tag Release/create packages\", you should move \"Smoke test packages\" to Ready for Engineering or In Progress if you are ready.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53545", "fixedVersions": [], "id": "53545", "issueType": "Task", "key": "HI-379", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-06-23T14:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera 3.0.0 2015-06-17 Release", "timeSpent": "PT0S", "updated": "2015-06-23T14:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is because yaml cannot use any type as a hash key. Unquoted the words {{true}} and {{false}} become booleans. There are many pits to fall into when writing yaml, not much we can do about that.", "created": "2015-06-09T18:17:00.000000"}], "components": [], "created": "2015-06-08T19:11:00.000000", "creator": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@618bdd4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0d67:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_83186345_*|*_6_*:*_1_*:*_0"}], "description": "if the keys are quoted they work, unquoted they do not work.  i couldn't find reference to this type of limitation in the docs, nor in jira.\nthese work, unquoted they return nil\n{code}\n'true': bar\n'false': bar\n'yes': bar\n'no': bar\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54070", "fixedVersions": [], "id": "54070", "issueType": "Bug", "key": "HI-378", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "resolution": "Won't Fix", "resolutionDate": "2015-06-09T18:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera can't use keys named true, false, yes, no", "timeSpent": "PT0S", "updated": "2015-06-23T15:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Could you try the same with later puppet and hiera 2.0 ? does that have the same problem?", "created": "2015-06-05T20:10:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "I am using Puppet Enterprise 3.7 and my understanding is that neither it or PE 3.8 include Hiera 2.\n\nIn my home lab, I upgraded to puppet opensource 3.8.1 but hiera 1.3.4 is the latest offered through the puppetlabs repo for EL6. I observe the same issues there, hiera CLI merges but the hiera_hash in the notify does not, though the message is flattened instead of displayed as a hash:\n{code}\nNotice: /Stage[main]/Profile::Base/Notify[message]/message: current_value absent, should be sudo::confinfrastructurepriority15content%infrastructure  ALL(ALL)       ALL (noop)\n{code}\nI don't have any easy way to get to hiera 2 for this testing.", "created": "2015-06-06T06:34:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Thanks [~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b] for supplying the details. Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d], do you have any clues to what may be going on here?", "created": "2015-06-06T15:58:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I have no idea what's going on. I tested Rob's configuration locally using Puppet 3.7 and Hiera 1.3.4 and \"yaml without eyaml\" and I'm not able to reproduce the problem. Both keys are found and merged properly by both puppet and hiera. I tested with Puppet 4.1.0 and Hiera 2.0 too and it works as expected.\n", "created": "2015-06-06T23:20:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b] Maybe you are encountering having multiple versions/configurations and getting the wrong mix? (Alternatively, Thomas tested some other way than how you are running your example).", "created": "2015-06-08T10:05:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Today I see it, and I'm not sure why:\n{code}\nNotice: /Stage[main]/Profile::Base/Notify[message]/message: current_value absent, should be sudo::confsysadminpriority10content%sysadmin  ALL(ALL)       ALLinfrastructurepriority15content%infrastructure  ALL(ALL)       ALL (noop)\n{code}\n(the format is uglier than with PE but that's not the concern here) That's from my PO lab, I'll try it in my PE environment after lunch and update the ticket.", "created": "2015-06-08T10:42:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] I cannot get this to work properly in PE 3.7. Can you verify that you were able to replicate this with the Enterprise edition, and if so were there any steps other than the file edits? I restarted pe-puppetserver and pe-httpd, are there are other services that are required to be restarted after hiera.yaml changes so that agents see the changes, in addition to the hiera CLI?", "created": "2015-06-08T14:56:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b], I only made a quick test by running puppet apply -e \"your notify command\" locally. No servers involved. I just wanted to verify that both Hiera and puppet presented the same thing given the hiera command and puppet notify when using the hiera.yaml from your example.\n\nRather than me setting up a complex environment involving a pe-puppetserver and a pe-httpd, perhaps you could try reproducing the problem in a less complex environment (ideally as simple as possible)? If that succeeds, then we can use that as a reproducible case. If not, then you have something to use as base where you can add complexity and see where the breakage is introduced.\n", "created": "2015-06-08T15:27:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b] Since this is for PE you can also use Puppet Labs Support to help drill down and finding the cause of the problem.", "created": "2015-06-08T15:34:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b] Are you by any chance using future parser with PE 3.7? There were issues with some of the hiera functions and things like undef values in the version of future parser in PE 3.7 IIRC. Also, PE 3.8 is the first version of PE that supports future_parser.", "created": "2015-06-08T15:39:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] I see that it works fine with puppet apply, as you tested, but not with puppet agent, even when I simplify the environment by replacing the site.pp with a simple default node that contains the notify. Not great, but confirmation of where the problem occurs.\n\n[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] I am not using future parser. I have opened a Puppet Labs Support ticket now that I confirmed the issue does not exist with Puppet OpenSource as well. I will close this ticket and update it if we discover a problem that is not related to our installation, in case that would help others.\n\nThanks!", "created": "2015-06-09T08:41:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "This may be implementation-related", "created": "2015-06-09T08:42:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:73d0a37f-a937-49d7-a5a9-49c385ccaa9f", "body": "[~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b] Did you ever get a resolution to this? I just opened a PE ticket for precisely the same problem with 2015.2.3.", "created": "2016-02-11T12:50:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "My issue with PE was caused by the gem provider. The deep_merge gem was not available to the PE environment.\n{code}\npuppet apply -e 'package{\"deep_merge\": ensure => present, provider => pe_gem,}'\n{code}\nThe provider should have been pe_puppetserver_gem for PE3.7. With Puppet 4 versions (2015 and up, I believe), it should be puppetserver_gem from https://forge.puppetlabs.com/puppetlabs/puppetserver_gem. We have not upgraded to 2015.x so I would assume the module is included but cannot confirm.\n\nI hope that helps.", "created": "2016-02-12T06:05:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:73d0a37f-a937-49d7-a5a9-49c385ccaa9f", "body": "[~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b] So if I installed the deep_merge gem manually already then we're not having the same problem?\n\n\n{code:bash}\n$ sudo /opt/puppetlabs/puppet/bin/gem list | grep deep_merge \ndeep_merge (1.0.1) \n$ sudo /opt/puppetlabs/server/bin/puppetserver gem list | grep deep_merge \ndeep_merge (1.0.1) \n{code}", "created": "2016-02-12T06:22:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correct, sounds like a different problem than I had. Sorry!", "created": "2016-02-12T07:47:00.000000"}], "components": [], "created": "2015-06-05T19:59:00.000000", "creator": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@50d0d3a2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0c6f:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_223571815_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_81388620"}], "description": "I am attempting to look up a hash that may be present in two hierarchy levels and combine them. This is what I expect the deeper behavior would result in given https://docs.puppetlabs.com/hiera/1/lookup_types.html#deep-merging-in-hiera--120 (though the documentation leaves out an example of the puppet DSL code that would be used). I have two yaml files, one at the puppet_role hierarchy and the other is the global hierarchy, that provide the 'sudo_confs' hash. Here is the hiera.yaml config and the two yaml files in play:\n{code}\n# cat /etc/hiera.yaml\n# managed by puppet\n---\n:backends:\n  - eyaml\n  - yaml\n:logger: console\n:hierarchy:\n  - \"clientcert/%{clientcert}\"\n  - \"puppet_role/%{puppet_role}\"\n  - global\n\n:yaml:\n   :datadir: /etc/puppetlabs/puppet/environments/%{environment}/hiera\n\n:eyaml:\n   :datadir: /etc/puppetlabs/puppet/environments/%{environment}/hiera\n   :extension: yaml\n   :pkcs7_private_key: /etc/puppetlabs/puppet/keys/private_key.pkcs7.pem\n   :pkcs7_public_key:  /etc/puppetlabs/puppet/keys/public_key.pkcs7.pem\n:merge_behavior: deeper\n{code}\n{code}\n$ cat hiera/global.yaml\n---\nsudo_confs:\n  sudo::conf:\n    sysadmin:\n      priority: 10\n      content: '%sysadmin  ALL(ALL)       ALL'\n{code}\n{code}\n$ cat hiera/puppet_role/build.yaml\n---\nsudo_confs:\n  sudo::conf:\n    infrastructure:\n      priority: 15\n      content: '%infrastructure  ALL(ALL)       ALL'\n{code}\n(Note that I have tried the following with the backends as eyaml then yaml, yaml then eyaml, and yaml without eyaml, restarting pe-puppetserver between each iteration, with no change in the responses recorded below)\n\nHere is the code being tested, the output of the notify on the agent, and the output of the hiera cli on the master:\n{code}\n; profile/base/linux.pp\nnotify{'message':message=>hiera_hash('sudo_confs')}\n{code}\n{code}\n; agent\n$ sudo /usr/local/bin/puppet agent -t --noop --environment sudoinfra\n...\nNotice: /Stage[main]/Profile::Base::Linux/Notify[message]/message: current_value absent, should be {\"sudo::conf\"=>{\"infrastructure\"=>{\"priority\"=>15, \"content\"=>\"%infrastructure  ALL(ALL)       ALL\"}}} (noop)\n...\n$ sudo /usr/local/bin/facter -p puppet_role\nbuild\n{code}\n{code}\n; master\n# hiera -h sudo_confs environment=sudoinfra puppet_role=build\n{\"sudo::conf\"=>\n  {\"sysadmin\"=>{\"priority\"=>10, \"content\"=>\"%sysadmin  ALL(ALL)       ALL\"},\n   \"infrastructure\"=>\n    {\"priority\"=>15, \"content\"=>\"%infrastructure  ALL(ALL)       ALL\"}}}\n{code}\nNot that only the infrastructure key is found in the higher priority puppet_role/build.yaml file by a puppet run but both keys are found at the CLI.\n\nThe hiera docs reference HI-118 which appears to be related to Automatic Parameter Lookups. This is possibly related to that ticket but I did not want to clutter the ticket's logs checking to see if that's the case, nor link it until that is verified.", "environment": "Puppet 3.7.4 (Puppet Enterprise 3.7.2)\nHiera 1.3.4\n:merge_behavior: deeper", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54069", "fixedVersions": [], "id": "54069", "issueType": "Bug", "key": "HI-377", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "resolution": "Won't Fix", "resolutionDate": "2015-06-09T08:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera CLI and hiera_hash in Puppet DSL provide different results", "timeSpent": "PT0S", "updated": "2016-02-12T07:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Please try dropping the {{::}} in front of the names - hiera only interpolates top scope variables anyway.", "created": "2015-05-28T15:15:00.000000"}, {"author": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "body": "Removed the \"::\" in front of \"environment\" variable and restarted puppet server. Same issue persists.\n\n{code}\n$ cat /etc/puppetlabs/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::fqdn}\"\n  - \"environment/%{::environment}\"\n  - global\n \n:yaml:\n  :datadir: \"/etc/puppetlabs/code/hieradata/%{environment}\"\n\n$ systemctl restart puppetserver.service\n\n$ hiera -a classes -d\nDEBUG: 2015-05-28 21:17:12 +0000: Hiera YAML backend starting\nDEBUG: 2015-05-28 21:17:12 +0000: Looking up classes in YAML backend\nDEBUG: 2015-05-28 21:17:12 +0000: Looking for data source global\nDEBUG: 2015-05-28 21:17:12 +0000: Cannot find datafile /etc/puppetlabs/code/hieradata/global.yaml, skipping\nnil\n{code}", "created": "2015-05-28T15:20:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "oh, this is via the hiera command - does it work when used with puppet? i.e. in a puppet manifest?\n\nSuspect you have to provide all the variables that should be set, or get them as stored facts for a node - which is broken in some versions of hiera/puppet. (The hiera command line app is not the greates).", "created": "2015-05-28T15:28:00.000000"}, {"author": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] I haven't used it in a manifest yet. However, I use it in the hierarchy and works fine when I have the full path in the :datadir.\n\n{code}\n\n$ cat /etc/puppetlabs/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::fqdn}\"\n  - \"environment/%{::environment}\"\n  - global\n \n:yaml:\n  :datadir: \"/etc/puppetlabs/code/hieradata/production\"\n \n$ systemctl restart puppetserver.service\n \n$ cat /etc/puppetlabs/code/hieradata/production/environment/production.yaml\n---\nmessage: 'This is production level in Hiera'\n\n$ hiera -d  message ::environment=production\nDEBUG: 2015-05-28 21:40:42 +0000: Hiera YAML backend starting\nDEBUG: 2015-05-28 21:40:42 +0000: Looking up message in YAML backend\nDEBUG: 2015-05-28 21:40:42 +0000: Looking for data source environment/production\nDEBUG: 2015-05-28 21:40:42 +0000: Found message in environment/production\nThis is production level in Hiera\n\n{code}", "created": "2015-05-28T15:42:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The hiera command does not understand anything about variables that are available when hiera is used from inside puppet. You must explicitly set them on the command line. (And do not use :: when doing so).", "created": "2015-05-28T17:05:00.000000"}, {"author": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "body": "Looks like :: is required while setting the variables on the command line.\n\n{code}\n\n$ hiera -d  message environment=production\nDEBUG: 2015-06-02 01:10:56 +0000: Hiera YAML backend starting\nDEBUG: 2015-06-02 01:10:56 +0000: Looking up message in YAML backend\nDEBUG: 2015-06-02 01:10:56 +0000: Looking for data source global\nnil\n$ hiera -d  message ::environment=production\nDEBUG: 2015-06-02 01:11:11 +0000: Hiera YAML backend starting\nDEBUG: 2015-06-02 01:11:11 +0000: Looking up message in YAML backend\nDEBUG: 2015-06-02 01:11:11 +0000: Looking for data source environment/production\nDEBUG: 2015-06-02 01:11:11 +0000: Found message in environment/production\nThis is production level in Hiera\n\n{code}", "created": "2015-06-01T19:13:00.000000"}, {"author": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Please close the ticket. Using puppet apply to test worked.\n\n{code}\n$ cat hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::fqdn}\"\n  - \"environment/%{::environment}\"\n  - global\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir: \"/etc/puppetlabs/code/hieradata/%{environment}\"\n\n$ puppet apply -e '$a = hiera(message) notify { $a: }'\nNotice: Compiled catalog for test.localdomain in environment production in 0.49 seconds\nNotice: This is production level in Hiera\nNotice: /Stage[main]/Main/Notify[This is production level in Hiera]/message: defined 'message' as 'This is production level in Hiera'\nNotice: Applied catalog in 0.15 seconds\n\n{code}", "created": "2015-06-01T19:27:00.000000"}], "components": [], "created": "2015-05-28T15:05:00.000000", "creator": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3f7b96a8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz05t3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_608886_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_399413028"}], "description": "Hi,\n\nUsing the environment variable or r10k_environment fact in the datadir field in hiera.yaml doesn't work. \n\n{code}\n$ cat /etc/puppetlabs/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::fqdn}\"\n  - \"environment/%{::environment}\"\n  - global\n\n:yaml:\n  :datadir: \"/etc/puppetlabs/code/hieradata/%{::environment}\"\n\n$ hiera -a classes -d\nDEBUG: 2015-05-28 21:02:54 +0000: Hiera YAML backend starting\nDEBUG: 2015-05-28 21:02:54 +0000: Looking up classes in YAML backend\nDEBUG: 2015-05-28 21:02:54 +0000: Looking for data source global\nDEBUG: 2015-05-28 21:02:54 +0000: Cannot find datafile /etc/puppetlabs/code/hieradata/global.yaml, skipping\nnil\n{code}", "environment": "CentOS 7\nOpenstack VM\nR10k 1.3.2", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53917", "fixedVersions": [], "id": "53917", "issueType": "Bug", "key": "HI-376", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:226358e4-b8c3-4c15-91a6-d7bda631032d", "resolution": "Cannot Reproduce", "resolutionDate": "2015-06-02T06:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "datadir in hiera.yaml not interpolating %{::environment} ", "timeSpent": "PT0S", "updated": "2015-06-08T07:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [], "components": [], "created": "2015-05-20T12:33:00.000000", "creator": "557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3e3fc397"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz00dz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/May/15"}], "description": "In support of PE-894, and in conjunction with [~accountid:63d40628f6e1b543161789a7]'s suggested [hiera-is-fragile branch|https://github.com/joshcooper/hiera/tree/hiera-is-fragile] please rename the currently packaged hiera.yaml to hiera.yaml.example and change the content of hiera.yaml.example to the following: \n\n{code}\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{clientcert}\"\n  - common\n \n:yaml:\n  :datadir: \"/etc/puppetlabs/code/environments/%{environment}/hieradata\"\n{code}\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53916", "fixedVersions": [], "id": "53916", "issueType": "Task", "key": "HI-375", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "change the name of hiera.yaml to hiera.yaml.example and change the content", "timeSpent": "PT0S", "updated": "2015-05-22T11:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Can this be updated with a description? Also, the linked PR in question is currently marked [DO NOT MERGE]. What is the intended target for this fix? To be bundled with Puppet 4.2.0?\n\nI like the principle of using a default in code if hiera.yaml does not exist and that we ship a hiera.yaml.example. It should have comments in it to explain that it can be copied to hiera.yaml and then configured.", "created": "2015-05-20T18:03:00.000000"}, {"author": "557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739", "body": "Description added.  I'm not sure why the pr is marked [DO NOT MERGE], maybe [~accountid:63d40628f6e1b543161789a7] can shed some light on that?  Re: timing, 4.2.0 sounds right.", "created": "2015-05-21T11:13:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] If the suggested solution is to remove the existing configuration file in favor of an internal in memory with the same content, while there is an external file named hiera.yaml.example that users can rename - then IMO it could be considered to be backwards compatible (which saves us the trouble of making a major release of Hiera. Still we did not really plan to do a hiera release for SG. This seems important enough to include. Need input on prioritization.", "created": "2015-05-21T15:28:00.000000"}, {"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "I believe that allowing hiera to run without a configuration file while not simultaneously not allowing someone to see what the configuration currently is could be confusing to users.  \n\nI'd say that we have to provide something akin to {{hiera --configprint}} to see what is configured before allowing hiera to run without a hiera.yaml.  \n\nMy understanding is that this ticket was created as a possible solution to configure hiera in PE by default.  I think the better solution to that problem is to configure OSS and PE in the same way instead of trying to figure out how to have them be different.  If they are the same then it's easier to talk about them the same way.  ", "created": "2015-05-21T16:09:00.000000"}, {"author": "557058:79cfdf4b-b7db-45b4-904b-68a82fb46933", "body": "*CS Impact*: This seems like a great idea for a new feature. It would be a very nice to have, doesn't seem as though it could have any ill effects in the future and also handily solves the packaging issue that Josh raises. \n\nThe only item of concern that we discussed was around being able to determine the \"in memory defaults\" via a --configprint or the like. [~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] will comment on that.", "created": "2015-05-21T16:10:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "I think if \"work out of the box\" means \"make the default settings invisible because there's no config file\", that is actually a worse user experience because there's no discoverability", "created": "2015-05-22T11:43:00.000000"}, {"author": "557058:79cfdf4b-b7db-45b4-904b-68a82fb46933", "body": "[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] I was not aware noreplace was an option based on the ticket description, agreed that explicitly dropping a config file on initial install and then not clobbering it on upgrade would be the best option.", "created": "2015-05-22T12:25:00.000000"}, {"author": "557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739", "body": "Just reopened [hiera PR 268|https://github.com/puppetlabs/hiera/pull/268]", "created": "2015-05-22T12:37:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739] The PR 268 was reopened without any description of why - now this ticket (HI-374) was also reopened.\n\nIn the PR I commented:\nbq. Looks like there is a chance this change will break someone that makes use of these defaults. Note that Hiera is a freestanding project and therefore anything that has to do with hiera as used with puppet has to be configured at the puppet end. (no, this is not great).\n\nAnd you then decided to close the PR.\n[~accountid:557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739] What changed now wrt that PR?\n\nWhen I read this ticket, I think (based on [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0]'s input that we should just change the config file in the next hiera version so that it has sane content). Since it will not overwrite anything when installing it with puppet it should not cause any breakage when used as intended.\nHave to look if there is another ticket for that - otherwise I suggest repurposing this ticket. \n", "created": "2015-05-27T03:39:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Agreed on repurposing this ticket assuming we settle on something like the above. If we do repurpose the ticket, let's also adjust the summary and description - as it stands, the summary wouldn't mean much to someone skimming release notes.", "created": "2015-05-27T08:26:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Got it now... the PR was changed to only modify the default configuration file. There is a discussion right now in the ticket about Windows requiring paths to be defined dynamically. In summary, if we have a new static hiera config file, it will need to be modified on Windows. The alternatives seems to be:\n\n* Let the installer deal with the difference and use a template to lay down the file - not sure how easy that is\n* The earlier rejected suggestion that the defaults are printed with a hiera --configprint option and that the defaults are set dynamically in code as factory-default.\n* Just update the darned file statically, it will not fix the problem of having to change the file on Windows though\n* Leave it as it is - a solution that exchanges one (known) problem with another is not ideal\n\nI am in favor of having it be dynamically generated and available as --configprint as it avoids all the hoopla at install time.\n[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] Sorry for pinging again... need your input", "created": "2015-05-28T09:21:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "After conversation with [~accountid:557058:d9266b08-990a-449f-97ff-f9a0910c2a58], the correct path is already dynamically determined and correct on Windows. Adding the explicit default and removing the comment describing the windows paths in the PR is wrong, but adjusting the hierarchy in line with the discussion is correct.\n\n[~accountid:557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739] will you please update your PR accordingly?", "created": "2015-05-28T10:12:00.000000"}, {"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "I think the comment should probably come back. The question is does the default need updated or is it set correctly? I looked at the documentation and didn't get a warm and fuzzy - http://docs.puppetlabs.com/hiera/2.0/configuring.html#datadir\n\nThe code also isn't giving me a warm and fuzzy that it is set correctly:\n\n* https://github.com/puppetlabs/hiera/blob/master/lib/hiera/backend.rb#L37\n* https://github.com/puppetlabs/hiera/blob/master/lib/hiera/util.rb#L30-L36\n\nI think a follow up ticket is in order?", "created": "2015-05-28T10:57:00.000000"}, {"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] are you suggesting that we leave the datadir blank in hiera.yaml but then change the default to be the one we had specified? \n\nSo, when no datadir is specified then it would default to {code} /etc/puppetlabs/code/environments/%{environment}/hieradata {code} on Nix and whatever [~accountid:557058:d9266b08-990a-449f-97ff-f9a0910c2a58] figures out for Windows?  \n\n", "created": "2015-05-28T11:02:00.000000"}, {"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "There is possibly a longer term solution that Josh mentioned, but I think making that simple change in the code base to change the default location will meet the need for most folks who use hiera.\n", "created": "2015-05-28T11:39:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:d9266b08-990a-449f-97ff-f9a0910c2a58] Are you saying that these defaults are wrong? https://github.com/puppetlabs/hiera/blob/master/lib/hiera/util.rb#L30-L36\nThey are at least what is stated in the documentation.", "created": "2015-05-28T14:36:00.000000"}, {"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] From my earlier question which wasn't answered - \"I think the comment should probably come back. The question is does the default need updated or is it set correctly?\"\n\nBased on the answer to that, it determines whether the default should change or not.", "created": "2015-05-28T14:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739] Can you update the PR to reflect the changes as per the description?", "created": "2015-05-29T08:31:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "Ping. Since Hiera 2 only ships with Puppet versions that always have $trusted enabled, *let's stop using the insecure $clientcert variable.* The hierarchy should include {code}certname/%{::trusted.certname}{code} instead.", "created": "2015-05-29T12:26:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Ahh good catch [~accountid:623c08e1562ab90069f8aed4] -- [~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] [~accountid:557058:4d037d5f-6e67-465d-84d3-9631f5599649] what do you think about that ^^^", "created": "2015-05-29T13:05:00.000000"}, {"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "Seems reasonable to me since this will only affect new users.  \n\nI had a thought that for users upgrading their certs would have been generated before trusted facts existed and that might cause an issue but that should be a non-issue since this is for new users only (existing users keep their existing hiera.yaml).  \n\nI don't know much about trusted facts but assuming it \"just works\" then I'm for it.  I googled \"trusted facts hiera\" and couldn't find anything on the subject.  \n", "created": "2015-05-29T13:17:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] Try searching for \"structured facts hiera\", which works the same way, only starting from {{$facts}} instead of {{$trusted}}.", "created": "2015-05-29T14:23:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I am prepared to take the PR and fix it up. There is however one loose end to tie up.\n\nShould we use what Nick is suggesting - the secure variant instead of {{::clientcert}} or not ? Eric pinged [~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] and [~accountid:557058:4d037d5f-6e67-465d-84d3-9631f5599649]. (Now pinging again).", "created": "2015-06-03T07:17:00.000000"}, {"author": "557058:4d037d5f-6e67-465d-84d3-9631f5599649", "body": "That's absolutely a good idea.  I don't have any reason why it wouldn't be wise/recommended, and totally defer to the sage wisdom of [~accountid:623c08e1562ab90069f8aed4]!  ", "created": "2015-06-03T07:20:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "All hail to [~accountid:623c08e1562ab90069f8aed4]... will fix up the PR to reflect his wisdom. Thanks [~accountid:557058:4d037d5f-6e67-465d-84d3-9631f5599649].", "created": "2015-06-03T07:30:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to master at: a1ebbb2", "created": "2015-06-03T08:06:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Note that this means Hiera 3.0.0 will not work with puppet 3.x with its default configuration which does not include trusted facts (they are opt in in 3.x).", "created": "2015-06-03T15:16:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "Hiera 3 requires Puppet 4+, roger that. ", "created": "2015-06-03T15:26:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "validated on ubuntu14.04 at agent SHA: 39dace1e049eaac7bf6c71e0792f60f688b2e63b\n{code}\n[root@jhm22h1e2ehvpxc ~]# cat /etc/puppetlabs/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - \"nodes/%{::trusted.certname}\"\n  - common\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\nfoo: bar\n# - /etc/puppetlabs/code/environments/%{environment}/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\environments\\%{environment}\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n\n[root@jhm22h1e2ehvpxc ~]# hiera yes\nbar\n{code}", "created": "2015-06-08T18:14:00.000000"}], "components": [], "created": "2015-05-13T17:49:00.000000", "creator": "557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@682440f2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CS Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Major"}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Risk Probability", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Medium"}, {"fieldName": "QA Risk Severity", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Low"}, {"fieldName": "QA Risk Severity Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "just defaults.  less friction for users"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyoslr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_198295299_*|*_1_*:*_1_*:*_605638919_*|*_10007_*:*_1_*:*_395912101_*|*_5_*:*_1_*:*_1378379850_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_270241601_*|*_10004_*:*_1_*:*_686583121_*|*_10006_*:*_1_*:*_91278403"}], "description": "*Updated to reflect action plan*\n\nThe config that hiera ships with is pretty out-of-date and hasn't been updated to reflect the way most hiera deployments work. We should update this to eliminate setup friction so that it works immediately after installation.\n\nThere are two parts to the change:\n\n1. update the default hierarchy in hiera.yaml to incorporate current best practices (just {{certname/%\\{certname&#x007D;}} and {{common}} levels.\n2. update the helper methods in [Hiera::Util|https://github.com/puppetlabs/hiera/blob/master/lib/hiera/util.rb#L30-L36] to reflect the AIO pathing changes that point to the OS-specific root, then {{/code/environments/%\\{environment\\}/hieradata}}\n\nThis (somewhat unfortunately from a timing standpoint, but without any real downside) triggers another semver major and therefore will be released as Hiera 3.0.0.\n\n-------\n*Original description*\nPresently, hiera is not configured to work out of the box with puppet for several reasons: \n- hiera should be maintained as a standalone project\n- hiera requires a config file to be in place to start\n- we include the config file from the hiera project in the puppet package\n\nLeading to the following unfortunate results: \n- the config file used by hiera after the puppet package is installed is not useful for configuring puppet, requiring upfront effort from users (pe or foss).  This also becomes a CS burden.\n- persistence of hiera.yaml customization is complicated by overwrites of hiera.yaml on package installation\n\nA potential two part solution would solve the problems above: \n- [~accountid:63d40628f6e1b543161789a7] proposed a modification to hiera to allow it to run without a config file.\n- we could package a usable hiera.yaml.example file that could serve as a real world example for hiera-only users and a springboard for users of hiera with puppet.  ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54068", "fixedVersions": ["HI 3.0.1"], "id": "54068", "issueType": "Improvement", "key": "HI-374", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:720f602d-ed4c-4553-a2cf-8e7dc40c0739", "resolution": "Fixed", "resolutionDate": "2015-06-08T18:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update hiera defaults to reflect current best practices", "timeSpent": "PT0S", "updated": "2015-06-24T17:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:6243a130fd5e450070434aa4] Do you have any measurements how much would be gained by changing this? (A quick test would be to simply hack the debug to not log at all) to see the time difference.", "created": "2015-04-28T13:41:00.000000"}, {"author": "6243a130fd5e450070434aa4", "body": "No, I don't, it depends on the user code, and IMO the original behavior is wrong since most of the people will think that in the above example `slow_method` function wont never be called, but it will.\n\nThe patch on github[1] is simple and is backward compatible.\n\n[1] https://github.com/puppetlabs/hiera/pull/267\n", "created": "2015-04-28T13:46:00.000000"}, {"author": "6243a130fd5e450070434aa4", "body": "I mean... the correct way of use a Logger in Ruby is by passing a block to be evaluated later, not a string.\n\nhttp://ruby-doc.org/stdlib-1.9.3/libdoc/logger/rdoc/Logger.html#method-i-info", "created": "2015-04-28T13:57:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The PR 267 was closed with the following comment:\nbq. Hm, this is far from enough. The loggers do not support a block, and they in turn call on to yet other loggers that do not support this. See hiera/puppet_logger, noop_logger, console_logger, and fallback_logger. Some of those loggers are internal hiera loggers, but the puppet one relies on how logging is done in puppet. The entire chain of loggers and their API will need to change for this to be implemented.\n\nbq. I am therefore closing this PR. I am leaving the ticket open since it is of value to not produce messages and avoid \"calling slow code\" when it is not needed, but far more work is needed than what is in this PR and it needs to start in puppet.", "created": "2015-04-28T16:19:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The hiera 5 in Puppet 4.9.0 has new interfaces for how to write backends. The new API has explain support built in that is defined in terms of a lambda as opposed to having to evaluate messages.", "created": "2017-02-07T07:12:00.000000"}], "components": [], "created": "2015-04-28T12:52:00.000000", "creator": "6243a130fd5e450070434aa4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6dd86fb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzmdz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12529120_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_56217099100"}], "description": "Hiera API (https://github.com/puppetlabs/hiera) always evaluate the string given to the logger.\n{code}\nrequire 'hiera'\n\nlogger = Logger.new('/dev/stdout')\nlogger.level = Logger::ERROR\nHiera.logger = logger\n\ndef slow_method\n  raise \"I'm slow!\"\nend\n\n# Good! But not supported by Hiera.debug or Hiera.warn\n# No exception should be thrown\nHiera.debug { \"Foobar: #{slow_method}\" }\n\n# Bad!\nHiera.debug \"Foobar: #{slow_method}\"\n{code}\n\n\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53731", "fixedVersions": [], "id": "53731", "issueType": "Improvement", "key": "HI-372", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "6243a130fd5e450070434aa4", "resolution": "Fixed", "resolutionDate": "2017-02-07T07:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Speed up logging in Hiera by making message evaluation lazy", "timeSpent": "PT0S", "updated": "2017-02-07T07:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:0117712d-bb9d-4300-af17-618b151fa267", "body": "When I first started using Hiera, I *really* wanted this functionality - something similar to grabbing the raw YAML from an ENC. It would be very helpful for debugging.", "created": "2015-09-07T11:00:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This can not be done in general because the backends have no API to request for an enumeration of keys. Remember that they can be backed by a wide variety of technologies. You could for instance have something that is algorithmic and that returns data based on the day of the year, it could be a database with a large number of records (e.g all users in LDAP).\n\nI am interested in the use case of seeing all. Do you really want to see all, or is it a different problem that you are trying to solve?\nWe are currently working on \"explain\" functionality - it will be able to tell how it came up with a value (or what it searched without finding a value). Naturally, this alone will not be able to tell you that there was a misspelled key - would it be helpful if it could compute nearest matches? - Like \"did you mean apatche?\" ? Is that more helpful? Want both ways?", "created": "2015-09-07T20:24:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as Won't Do as there has been no input on this and it is in general close to impossible to do (enumerate all keys) since the backends may be based on patterns, talk to database backends etc where this cannot be supported.", "created": "2017-08-21T10:21:00.000000"}], "components": [], "created": "2015-04-20T15:04:00.000000", "creator": "623a45cd866b810069e36687", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3ae6e00d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CS Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzhjr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_73768612769_*|*_6_*:*_1_*:*_0"}], "description": "Command line argument to print all hiera key/values for a given node:\n\nExample:\n\n{code}\nhiera <EVERYTHING> -c /etc/puppetlabs/puppet/hiera.yaml ::environment=production ::app_role=mywebserver ::app_tier=dev\n{code}\n\nIdeally a user would want to know all of the key values based on the filters specified.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53803", "fixedVersions": [], "id": "53803", "issueType": "New Feature", "key": "HI-371", "labels": ["customer"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a45cd866b810069e36687", "resolution": "Won't Do", "resolutionDate": "2017-08-21T10:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Command line argument to print all hiera key/values for a given search", "timeSpent": "PT0S", "updated": "2017-08-21T10:21:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "This obviously isn't going to happen anytime soon. Closing.", "created": "2015-06-10T12:10:00.000000"}], "components": [], "created": "2015-04-14T12:54:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ddc50f4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzec7:"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Adopted"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Pulled in in preparation for the hiera 3.0.0 release"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Release Engineering"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_184717_*|*_10007_*:*_1_*:*_85435835_*|*_5_*:*_1_*:*_708526134_*|*_6_*:*_2_*:*_433532813_*|*_10006_*:*_1_*:*_4921776265_*|*_10005_*:*_1_*:*_204950"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53857", "fixedVersions": ["HI 3.0.1"], "id": "53857", "issueType": "Task", "key": "HI-369", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-16T12:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update build_defaults For Hiera >= 2.x", "timeSpent": "PT0S", "updated": "2015-06-24T17:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-04-09T16:48:00.000000", "creator": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2a19a86f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzc1j:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_125214817906_*|*_6_*:*_1_*:*_0"}], "description": "Puppetlabs-release will contain all released versions of puppet-agent. With keeping both stable and master puppet-agent branches, and tagging only occuring on stable, all packages created off master will be behind the last released version. If puppetlabs-release is installed as a repo for acceptance setup against a puppet-agent#master package, it'll pull the released version instead of the build for the specified SHA.\n\nPuppet-agent packages have no dependency on other puppetlabs packages, so don't include the puppetlabs-release repo in setup.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54067", "fixedVersions": [], "id": "54067", "issueType": "Improvement", "key": "HI-368", "labels": ["AIO_TechDebt"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "resolution": "Won't Fix", "resolutionDate": "2019-03-28T22:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update AIO acceptance setup to skip puppetlabs-release", "timeSpent": "PT0S", "updated": "2019-03-28T22:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Note that both the old and new pipelines in Jenkins will need adjustment at the same time:\n* https://jenkins.puppetlabs.com/view/Hiera/view/Master/\n* https://jenkins.puppetlabs.com/view/All%20in%20One%20Agent/view/Hiera/\n", "created": "2015-03-20T16:25:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Also need to add utopic unicorn ubuntu 14.10 and debian 8, which are missing from puppet.", "created": "2015-03-20T17:21:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "I did a test run in the Hiera AIO pipeline and it looked reasonable:\n\nhttps://jenkins.puppetlabs.com/view/All%20in%20One%20Agent/view/Hiera/job/platform_aio-hiera_intn-sys_master/8/\n\n(The debian 8, fedora 20/21, and utopic failures are because that build was done without those packages.)", "created": "2015-03-22T16:40:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Updating https://jenkins.puppetlabs.com/view/Hiera/view/Master/", "created": "2015-03-23T11:01:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "This has passed both conventional and AIO pipelines.", "created": "2015-03-24T15:16:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Nothing for Test Rail here.", "created": "2015-03-27T11:42:00.000000"}], "components": [], "created": "2015-03-20T16:22:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7e6c1913"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyhr:"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Found"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "AIO"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_101706109_*|*_1_*:*_1_*:*_408311_*|*_10007_*:*_1_*:*_74612131_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_164888810"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54066", "fixedVersions": [], "id": "54066", "issueType": "Task", "key": "HI-366", "labels": ["AIO"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-24T15:16:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update hiera#master acceptance configs to match puppet#master's", "timeSpent": "PT0S", "updated": "2018-04-03T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [], "components": [], "created": "2015-03-20T16:12:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2412299d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyz0v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_433596723_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_7885642"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%222.0.0%22%20AND%20status%20%3D%20Resolved\n\nThere is a bulk edit at the top (a gear with the word \"Tools\"). Should you decide to take this route:\n  * Select Bulk Change - All # issues\n  * Step 1 - choose all relevant issues (likely all of them)\n  * Step 2 - Select \"Transition Issues\"\n  * Step 3 - Select \"Closed\"\n  * Step 4 - Select \"Fixed\" in Change Resolution.\n  * View what is about to change and confirm it. Then commit the change.\n\nDependencies:\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53915", "fixedVersions": [], "id": "53915", "issueType": "Sub-task", "key": "HI-365", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T18:50:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [], "components": [], "created": "2015-03-20T16:12:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2816d3af"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyz0n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_433596864_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_7760790"}], "description": "  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]: update the release google spreadsheet.\n  * Update the MSI build targets in the Puppet repo in ext/build_defaults.yaml. This needs to be done for any projects that are to get into the MSI (facter and hiera as of 8/2014)\n  * Send the drafted release notes email.\n    * If final send to puppet-announce and specific distribution lists (e.g. puppet to puppet-users & puppet-dev).\n    * If this release has security implications, also send the release announcement to puppet-security-announce\n  * Make a PSA on IRC letting those kiddos know about the new release.\n    * Something along the lines of \"PSA: facter 1.7.3 now available\"\n\nDependencies:\n  * Prepare long form release notes and short form release story\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53973", "fixedVersions": [], "id": "53973", "issueType": "Sub-task", "key": "HI-364", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T18:48:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-03-25T18:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Jean confirmed docs have been pushed in the puppet core hipchat channel:\n\n[3:27 PM] Jean Bond: Docs are pushed!\n", "created": "2015-03-25T16:38:00.000000"}], "components": [], "created": "2015-03-20T16:12:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4b8169f4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyz0f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_433590388_*|*_5_*:*_1_*:*_107552982305_*|*_6_*:*_1_*:*_0"}], "description": "Push the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53853", "fixedVersions": [], "id": "53853", "issueType": "Sub-task", "key": "HI-363", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T16:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2018-08-21T12:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] see comment at the end of HI-359. We should only be pushing gem/tar. It was my bad asking for all packages earlier, sorry for the churn.", "created": "2015-03-25T13:50:00.000000"}], "components": [], "created": "2015-03-20T16:12:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c77fdc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyz07:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_432195048_*|*_3_*:*_1_*:*_311149_*|*_5_*:*_1_*:*_0"}], "description": "Push packages\n  * run `rake pl:jenkins:uber_ship`\n    * You will need the keys to the castle (aka the passphrase) for this to work.\n    * Don't forget to make sure everything looks like it's in the correct folder, the pkgs dir has been cleared out, and that you are shipping for all expected platforms.\n    * Get a *second set of RelEng eyes* on the packages that are about to be shipped to make sure everything looks a-okay.\n    * If you're shipping a gem you need to make sure you have a rubygems account, are an owner of that project, and have a gem config file.\n    * If you're shipping puppet you need to sign the MSI file for Windows. This is a manual process and the ship task doesn't ship or build the msi so talk to Moses or Haus for more details. This file also needs to be manually signed.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53802", "fixedVersions": [], "id": "53802", "issueType": "Sub-task", "key": "HI-362", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T16:20:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-03-25T16:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Once this is done, we can merge https://github.com/puppetlabs/puppet-agent/pull/121.", "created": "2015-03-25T14:12:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1dfd59f1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyzz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_432173390_*|*_5_*:*_1_*:*_0"}], "description": "The development team is responsible for updating the stable/master branches as necessary.\nThis will be done after the version bump in version.rb.\n\nDependencies:\n  * Go / No Go meeting (except where it's required to push the tag to build packages - MSIs)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53752", "fixedVersions": [], "id": "53752", "issueType": "Sub-task", "key": "HI-361", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T16:14:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-03-25T16:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Go from: [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e], [~accountid:557058:372bc64a-3ef7-46ac-9a0a-50bcf4819b9c], [~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715], [~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a], [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920].", "created": "2015-03-25T14:41:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "And from [~accountid:557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79]", "created": "2015-03-25T16:15:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@43496899"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyzr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_426597296_*|*_5_*:*_1_*:*_0"}], "description": "This should happen Monday-Thursday, before 4pm. We should not be shipping anything after 4:00 PM or on a Friday both for our users, and because shipping takes time.\n\nGet a yes/no for the release from dev, docs, product, qa, releng.\n\nThis meeting is informal, over chat, and usually happens right before packages are pushed.\nKeep in mind we typically do not ship releases in the evening and we don't ship on Friday if the release is a final release.\n\nDependencies:\n  * Smoke testing\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53730", "fixedVersions": [], "id": "53730", "issueType": "Sub-task", "key": "HI-360", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T14:41:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-03-25T16:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages are available at http://builds.puppetlabs.lan/hiera/2.0.0/", "created": "2015-03-24T17:49:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Let's smoke:\n* rhel7 -- krw\n* rhel6\n* debian 7\n* trusty \n* gem", "created": "2015-03-25T09:43:00.000000"}, {"author": "557058:372bc64a-3ef7-46ac-9a0a-50bcf4819b9c", "body": "Gem looks good: (y)\n\n{code}\n$ hiera --version\n2.0.0\n{code}\n\nTested:\n* yaml backend\n* json backend\n* interpolated hierarchy\n* non-existent lookup with and without default value\n* debug option\n* config file option\n* ouput as array\n* output as hash\n* json output format\n* yaml output format", "created": "2015-03-25T09:52:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "On an upgrade from hiera 1.3.4 to hiera 2.0.0, the config and data files are not migrated, so after the upgrade is complete, hiera will be broken until this is corrected:\n{code}\n# hiera --version\n1.3.4\n# hiera foo\nbar\n# hiera fee\nfie fo fum\n{code}\n\nAfter the upgrade:\n{code}\n# hiera --version\n2.0.0\n# hiera foo\nFailed to start Hiera: RuntimeError: Config file /etc/puppetlabs/code/hiera.yaml not found\n# hiera fee\nFailed to start Hiera: RuntimeError: Config file /etc/puppetlabs/code/hiera.yaml not found\n{code}\n\nWith some manual tweaks after the upgrade, hiera worked as expected:\n{code}\n# mkdir -pv /etc/puppetlabs/code/hieradata\nmkdir: created directory \u2018/etc/puppetlabs/code\u2019\nmkdir: created directory \u2018/etc/puppetlabs/code/hieradata\u2019\n# cp -v defaults.yaml /etc/puppetlabs/code/hieradata/common.yaml\n\u2018defaults.yaml\u2019 -> \u2018/etc/puppetlabs/code/hieradata/common.yaml\u2019\n# touch /etc/puppetlabs/code/hiera.yaml\n# hiera foo\nbar\n# hiera fee\nfie fo fum\n{code}", "created": "2015-03-25T10:16:00.000000"}, {"author": "557058:372bc64a-3ef7-46ac-9a0a-50bcf4819b9c", "body": "Testing trusty.", "created": "2015-03-25T10:18:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "RHEL7 RPM looked good. Printed version number", "created": "2015-03-25T10:20:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Based on hipchat convo, rpm/deb packages should:\n* create an empty /etc/puppetlabs/code/hiera.yaml\n* create an empty /etc/puppetlabs/code/hieradata", "created": "2015-03-25T11:15:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "A fresh installation on RHEL6 (with no prior puppet or hiera installation) required creating the new path elements. After that, printed version number", "created": "2015-03-25T11:16:00.000000"}, {"author": "557058:372bc64a-3ef7-46ac-9a0a-50bcf4819b9c", "body": "I agree with the above, although I think we should be laying down the same hiera.yaml we were in the 1.x packages (it's not empty, but has a basic recommended configuration).", "created": "2015-03-25T11:26:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "+1 not empty.  --and last i checked the aio packages didn't create hieradata dir, and didn't create hiera.yaml (but there is one in /etc/hiera.yaml)--  cool, they are created now.", "created": "2015-03-25T12:02:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Okay my bad. We decided this is gem/tar only.\n\nSo smoke tests passed b/c we only needed gem.", "created": "2015-03-25T12:04:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "FWIW, i tested this on ubuntu14.10 using puppet-agent from package 0c5fc78bf61cfc508b78545763d59d4bdf7b5383\n{code}\n[root@dozj52h6qvx8czs ~]# ls /etc/puppetlabs/code/\nenvironments  hieradata  hiera.yaml  modules\n[root@dozj52h6qvx8czs ~]# ls /etc/puppetlabs/code/hieradata/\n[root@dozj52h6qvx8czs ~]# cat /etc/puppetlabs/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - defaults\n  - \"%{clientcert}\"\n  - \"%{environment}\"\n  - global\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\code\\hieradata on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n[root@dozj52h6qvx8czs ~]# vi /etc/puppetlabs/code/hieradata/global.yaml\n[root@dozj52h6qvx8czs ~]# hiera erict\nwuz_here\n{code}", "created": "2015-03-25T12:40:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c979e95"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyzj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_351450031_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_71986538"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.\n\nIn general this should happen on a variety of platforms, i.e. one or two each of kind of package we create (i.e., gem, dmg, msi, deb, rpm, etc).\n\nFor Puppet, our acceptance suite now tests service scripts, and on debian, a passenger master.  Manual smoke testing can therefore be limited to other package formats than deb and rpm.\n\nLighter testing of Z releases is acceptable.\n\n  * Add a link to the Packages repository that you receive from the \"Tag and create packages\" subtask\n  * Ping folks on your team for help with different platforms.\n  * When you pick up a platform, please leave a comment below that you are testing it. When it looks good, leave another comment, preferably with a code snippet showing the commands executed and their output.\n  * When all platforms picked have been smoke tested, move this ticket to done.\n\nIMPORTANT: Please edit the description of this ticket and remove \"Example:\" below. Edit the platforms to smoke test on, and the smoke test procedure.\n\nExample:\nSmoke test platforms:\n  * pick some platforms such as\n  * Windows 2003/2008/2012 (msi)\n  * Solaris 10/11 (tarball or gem?)\n  * OSX (dmg)\n  * (Note if you are smoke testing Puppet and pick an rpm or deb based platform, concentrate on testing a gem or tarball, since acceptance should have adequately smoke tested those packages.)\n    * RHEL/CentOS 5/6/7\n    * Fedora 19/20\n    * Debian 6/7\n    * Ubuntu 10.04/12.04/14.04\n\nSmoke test procedure:\n  * Start/stop/restart a master (if the platform supports that)\n  * Start/stop/restart an agent\n  * Help/man\n  * Write and run some manifests\n\nDependencies:\n  * Tag and create packages\n  * For Windows MSIs - Push tag\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53620", "fixedVersions": [], "id": "53620", "issueType": "Sub-task", "key": "HI-359", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T13:49:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-03-25T13:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages are available at http://builds.puppetlabs.lan/hiera/2.0.0/", "created": "2015-03-24T17:49:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4aa9ad3a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyzb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_351443778_*|*_5_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] - Please add the SHA as a comment (this should be the commit which contains the newly updated version.rb)\n  * checkout the sha\n    * Make sure you are about to tag the correct thing\n  * Create the tag e.g.) git tag -s -u {GPG key} -m \"1.7.3\" 1.7.3\n    * You need to know the pass phrase for this to complete successfully. It's important that we make sure all releases are signed to verify authenticity.\n    * DO NOT push the tag to the repo, keep it local only\n  * `git describe` will show you the tag. Make sure you're building what you think you're building.\n  * Make sure you look over the code that has changed since the previous release so we know what's going out the door.\n  * run `rake package:implode package:bootstrap pl:jenkins:uber_build` when you've verified what version you're building (this uses the latest version of the packaging repo to build the packages).\n  * If this is a puppet release, you have to build the windows msi. This is done using jenkins jobs on jenkins-legacy. You have to make sure you're targeting the correct versions of hiera, facter and puppet.\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] please add a comment with location of packages.\n\nFor puppet, don't forget the msi packages. This usually comes after other smoke testing is going well since it does require the tag to be pushed live.\n\nDependencies:\n  * Every ticket before this except for release notes.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53544", "fixedVersions": [], "id": "53544", "issueType": "Sub-task", "key": "HI-358", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-24T17:49:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-03-24T17:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Introduced in Hiera 2.0.0: https://puppet.atlassian.net/issues/?filter=13824\nFixes for Hiera 2.0.0: https://puppet.atlassian.net/issues/?filter=13825", "created": "2015-03-25T06:39:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@55e21cf0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyz3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_348844991_*|*_3_*:*_1_*:*_92522428_*|*_5_*:*_1_*:*_107545664639_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Is there a JIRA ticket targeted at the release for every commit?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54065", "fixedVersions": [], "id": "54065", "issueType": "Sub-task", "key": "HI-357", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T18:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2018-08-21T12:35:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2e55804d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyyv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_397716834_*|*_5_*:*_1_*:*_0"}], "description": "This happens on Jira - we need to clean up the current release and prepare for the next release.\n  * Mark the version that's going out as \"Released\" in the Project Admin -> Versions panel.\n  * Create a version we can target future issues or issues that didn't make it into the current release.  (e.g. if we're releasing Facter 1.7.4, make sure there's a 1.7.5 version (or at least 1.7.x if there's isn't another bug release planned for the near future)\n  * Create a public pair of queries for inclusion in the release notes/announcement. These allow easy tracking as new bugs come in for a particular version and allow everyone to see the list of changes slated for the next release (Paste their URLs into the \"Release story\" ticket):\n    - 'project = XX AND affectedVersion = 'X.Y.Y', Save as \"Introduced in X.Y.Y\", click Details, add permission for Everyone\n    - 'project = XX AND fixVersion = 'X.Y.Z', Save as \"Fixes for X.Y.Z\", click Details, add permission for Everyone\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54034", "fixedVersions": [], "id": "54034", "issueType": "Sub-task", "key": "HI-356", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T06:40:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-03-25T06:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "I updated https://jenkins.puppetlabs.com/view/Hiera/view/Stable/job/Hiera-Acceptance-stable/ to:\n* use acceptance rather than acceptance_tests\n* use node configs in config/nodes/<platform>.yaml rather than config/<platform>.cfg\n* update node config names to match new conventions\n* test against facter#2.x and puppet#master since that's what hiera has been testing against", "created": "2015-03-24T17:54:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@10553a16"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyyn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_351185760_*|*_5_*:*_1_*:*_0"}], "description": "For some releases, the code base will need to be merged down to stable.\n\n*NOTE:* This is usually only during a x.y.0 release, but even then it may have already been done. If it doesn't apply, close this ticket.\n\n\nAssuming you have origin (your remote) and upstream (puppetlabs remote), the commands will look something like this:\n{noformat}\ngit fetch upstream\ngit rebase upstream/master\n\ngit checkout stable\ngit rebase upstream/stable\n\ngit merge master --no-ff --log\n{noformat}\n\nOnce that looks good:\n{noformat}\ngit push origin\ngit push upstream\n{noformat}\n\nAfter merging to stable, the jobs on jenkins may require updates (spec, acceptance, etc) when you merge master into stable. Please ensure that the jenkins jobs are updated if necessary.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53914", "fixedVersions": [], "id": "53914", "issueType": "Sub-task", "key": "HI-355", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-24T17:44:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-03-24T17:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Updated in 01f0aa5c8c159bdeda272201654fc3444a034f14.", "created": "2015-03-24T15:54:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42c49252"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyyf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_344576941_*|*_5_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/HI/version.rb or project.clj to correct version.\n\n  * Commit the updated version file.\n    * e.g) commit -m \"(packaging) Update FACTERVERSION to 1.7.3\".\n  * If any merging needs to happen (i.e. master into stable/stable into master), it can now happen (different subtask).\n  * Once this is done, hand the SHA to be built to RelEng to be tagged.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53970", "fixedVersions": [], "id": "53970", "issueType": "Sub-task", "key": "HI-354", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-24T15:54:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-03-24T15:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Verified with https://gist.github.com/thallgren/c7bf0c082369a1acb0e4.\n\n{code}\nALL ISSUES WERE FOUND IN GIT\n{code}\n", "created": "2015-03-24T15:52:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@a699228"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyy7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_344468655_*|*_5_*:*_1_*:*_0"}], "description": "Ensure all tickets targeted at the release have a corresponding commit\n  * git log <old tag>..<new tag>\n  * This time, look through tickets targeted at this release in JIRA, and compare it to the commit log, looking for the corresponding numbers\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release) There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53852", "fixedVersions": [], "id": "53852", "issueType": "Sub-task", "key": "HI-353", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-24T15:52:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-03-24T15:52:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Verified with https://gist.github.com/thallgren/c7bf0c082369a1acb0e4.\n\nThe unmarked commits are:\n\n{code}\n** UNMARKED\n    51bed82  Revert \"(maint) Add deep_merge gem install to git and packages pre-suite\"\n    303add3  Revert \"(maint) Remove unused setup script\"\n    5c57446  Revert \"(HI-238) Remove current directory from Ruby load path.\"\n    7adfc62  Adds ignore of .idea/ directory (used by RubyMine IDE)\n    7c2f324  Revert \"(HI-304) Make order override work with interpolation\"\n    62ebf80  Update pooling_api everywhere\n    47cffbf  inform the world which key caused a type mismatch\n    12ad2ea  Update pooling_api everywhere\n    886c84c  Previously, RPMS built on Amazon Linux would point to the improper ruby directory, or would have improper dependencies.\n    553b37b  Use fedora/rhel7's ruby dir on amz-linux\n    fa7a6ee  Adds support for building hiera on RHEL7 via spec.\n    e35b2ea  Use the same kind of gem source switching as Puppet\n    979adf3  use configurable gem source\n    f01ba25  use pooling api\n{code}\n\nI verified that those don't need tickets (trivial/maint/qeng/packaging).", "created": "2015-03-24T15:50:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@671f0985"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyxz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_344377771_*|*_5_*:*_1_*:*_0"}], "description": "Ensure all tickets referenced in the commit log have a bug targeted at the release\n\n  * git log <old tag>..<new tag>\n  * look through, and make sure that if there is a JIRA ticket number referenced in any of the commits, that ticket is targeted at the release\n  * Also, make sure the code itself is sane, that you understand why the change was made, etc. etc.\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release). There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53801", "fixedVersions": [], "id": "53801", "issueType": "Sub-task", "key": "HI-352", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-24T15:51:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-03-24T15:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "hiera#master has passed both conventional and AIO pipelines.", "created": "2015-03-24T15:18:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5565d532"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyxr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_342454845_*|*_5_*:*_1_*:*_0"}], "description": "If there are any version dependencies expressed in the code base, make sure these are up to date. For Puppet, make sure the shas used to build the MSI are correct. For Puppet-Server, make sure all references to the puppet version are correct.\n\nAll tests (spec, acceptance) should be passing on all platforms for both stable & master.\n\n  * If a new platform has been added, make sure that platform has acceptance testing, new features have decent coverage, etc. etc.\n  * If the release is going to be cut from a sha, rather than the head of a branch, make sure that sha specifically has gone through spec/acceptance/etc. tests\n  * Move all items that should be moved from Ready for CI to Ready for Review\n\nHave all tickets been resolved (passed Functional Review)? If not please add any missing tickets to the current sprint's board.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%222.0.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53751", "fixedVersions": [], "id": "53751", "issueType": "Sub-task", "key": "HI-351", "labels": [], "originalEstimate": "PT0S", "parent": "53729", "parentSummary": "hiera 2.0.0 2015-03-25 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-24T15:18:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-03-24T15:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "We should update the configs and run acceptance through before tagging/releasing/etc.", "created": "2015-03-20T16:23:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets not triaged to Test Rail.", "created": "2015-04-14T16:30:00.000000"}], "components": [], "created": "2015-03-20T16:11:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6cd9d735"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyhb:"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Found"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "AIO moved from Language team"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_437284_*|*_10007_*:*_1_*:*_99217053_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_341895934"}], "description": "hiera 2.0.0 2015-03-25 Release\n\nWhen working through this ticket, add it to the board and then keep it in the Ready for Engineering column.\nMove the subtasks to In Progress when you are working on them and Resolved when you have completed them.\nIn general subtasks should only be moved to Ready for Engineering when they are ready to be worked on. For some assignees this is their cue to start working on release-related items.\n\n * The first set of tickets are assigned to the developer, those can all be converted to Ready for Engineering and you can start working through them.\n * Only when those are done should you move the \"Prepare notes\" and \"Tag release/create packages\" tasks to Ready for Engineering. Ping those assigned to move forward.\n * When you hear back for \"Tag Release/create packages\", you should move \"Smoke test packages\" to Ready for Engineering or In Progress if you are ready.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53729", "fixedVersions": [], "id": "53729", "issueType": "Task", "key": "HI-350", "labels": ["AIO"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-25T18:50:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera 2.0.0 2015-03-25 Release", "timeSpent": "PT0S", "updated": "2018-04-03T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "6243b2a2258562006fa2e24b", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Maybe because the second case is a recursive call to {{hiera}} from within {{hiera_classes}}. What happens if you lookup the content before you call hiera_include() ? (Just as a test) Does that produce the correct content?\n\nAlso, are you 100% sure the {{is_test}} is set in the second case. Try hardcoding it instead of using a variable.", "created": "2015-03-12T16:02:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "The hiera functions are deprecated so I\u2019m going to close this.", "created": "2022-02-17T00:09:00.000000"}], "components": ["Community"], "created": "2015-03-12T10:22:00.000000", "creator": "6243b2a2258562006fa2e24b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a3b056d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CS Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Normal"}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyu93:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_20390767_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_218884021516"}], "description": "This test involves /etc/issue.\n\nIn this example {{is_test}} returns true.\n{code}\n#/var/lib/hiera/common.yaml:\nclasses:\n  - config::issue\n\nconfig::issue::content: 'puppet:///modules/config/issue'\n{code}\n{code}\n# /var/lib/hiera/test_%{::is_test}/common.yaml\nconfig::issue::content: 'puppet:///modules/config/issue-test'\n{code}\n{code}\n#/etc/puppet/manifests/site.pp:\nhiera_include('classes')\n{code}\n{code}\n# /etc/puppet/modules/config/manifests/issue.pp\nclass config::issue ( $content ) {\n  tag 'config_issue'\n\n  file {\n    '/etc/issue':\n      ensure  => file,\n      group   => 'root',\n      mode    => '0644',\n      owner   => 'root',\n      seluser => 'system_u',\n      selrole => 'object_r',\n      seltype => 'etc_t',\n      source  => \"$content\";\n  }\n}\n{code}\nIn this format, everything works as expected. The following does not work as expected.\n\n{code}\nclass config::issue {\n  tag 'config_issue'\n\n  $content = hiera('config::issue::content')\n\n  file {\n    '/etc/issue':\n      ensure  => file,\n      group   => 'root',\n      mode    => '0644',\n      owner   => 'root',\n      seluser => 'system_u',\n      selrole => 'object_r',\n      seltype => 'etc_t',\n      source  => \"$content\";\n  }\n}\n{code}\nIn the first example, the content of issue-test is pulled down. In the second example, the content of issue is pulled down. According to http://docs.puppetlabs.com/hiera/1/puppet.html#limitations it should be doing a priority lookup on the parameter as passed. Also, according to http://docs.puppetlabs.com/hiera/1/puppet.html#hiera-lookup-functions hiera() is doing a standard priority lookup.\n\nWhat I don't understand is, why does one way return issue-test and the other does not? If I am incorrect on any assumptions, I'd ask for some clarification.", "environment": "Linux puppetmaster-test 2.6.32-431.29.2.el6.x86_64 #1 SMP Tue Sep 9 21:36:05 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux\nhiera-1.3.4-1.el6.noarch\npuppet-3.7.4-1.el6.noarch", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53850", "fixedVersions": [], "id": "53850", "issueType": "Bug", "key": "HI-349", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "6243b2a2258562006fa2e24b", "resolution": "Won't Do", "resolutionDate": "2022-02-17T00:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Puppet to Hiera Lookup", "timeSpent": "PT0S", "updated": "2022-02-17T00:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "It (symbol or hash) seems like a decent solution to the problem.", "created": "2015-03-09T08:35:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "QA Risk assessment = Medium\nProbability: low, deep_merge not often used on lookup\nSeverity: medium, strange errors on lookups with workarounds\nTest layer prediction: unit\nCurrently, risk assessment of medium targets manual validation with possible future automation", "created": "2015-03-09T09:29:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to master at 920f10b", "created": "2015-03-09T13:09:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] Please update the pre-docs wrt to this change to the backend API.", "created": "2015-03-09T13:09:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "Is there any user-facing interface to this, using the Puppet functions or the {{hiera}} command line? ", "created": "2015-03-23T16:31:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The user facing part of this is in the new {{lookup}} function in Puppet 4.0. The UI for hiera itself (hiera command and hiera functions in puppet) are not affected - they continue to work as before.", "created": "2015-03-23T20:21:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Tested and reviewed as part of testing the lookup functionality.", "created": "2015-03-24T15:43:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "see functional verify in [pup-4070|https://puppet.atlassian.net/browse/pup-4070]", "created": "2015-03-24T16:27:00.000000"}], "components": [], "created": "2015-03-09T04:38:00.000000", "creator": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@53b2b299"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyp1yn:"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Found"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1304259072_*|*_1_*:*_1_*:*_13564_*|*_10007_*:*_1_*:*_11047173_*|*_3_*:*_1_*:*_19571729_*|*_5_*:*_1_*:*_97569765_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1035374"}], "description": "Options for deep-merge can only be set using the Hiera config. This configuration is then applied to all lookup calls. It must be possible to propagate these options in each call.\n\nA proposed solution is to allow the _resolution_type_ parameter to be given as a {{Hash}} as well as a {{Symbol}}. When passing a {{Hash}}, Hiera config values for {{:merge_behavior}} and {{:deep_merge_options}} will be completely ignored. Instead the _resolution_type_ will be {{:hash}}, the {{:merge_behavior}} will be {{:deeper}} and the {{:deep_merge_options}} will be those found in the given hash.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53728", "fixedVersions": ["HI 2.0.0"], "id": "53728", "issueType": "Bug", "key": "HI-348", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "resolution": "Fixed", "resolutionDate": "2015-03-24T15:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Enable deep-merge options to be passed in lookup", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623cfdfb8d8b9c0068b93e3c", "attachments": [], "comments": [{"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "QA priority: high (impact: high: reported as security concern from PE, probability: high: core functionality)\ntest-level: spec (with perhaps a small acceptance component to be determined)", "created": "2015-03-04T13:28:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "With the shifted focus to Lookup and all the QA work on it, should this ticket perhaps be closed. (May not be done until hiera is deprecated in favor of Lookup ", "created": "2016-02-09T19:38:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "i still think this one needs some testing.  maybe we just put it in acceptance so we can close it out quickly.  We need to ensure data doesn't leak across hierarchies.  the lookup test that [~accountid:557058:8872d0b6-d198-4e25-92ad-02776be82d59] just put in to stable covers the modern cases to ensure most leakage is prevented btwn modules and environments.  but we should still cover the hiera hierarchy case.", "created": "2016-02-10T11:58:00.000000"}], "components": ["QA"], "created": "2015-03-04T13:22:00.000000", "creator": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5120d5bd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyoti7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_341646_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_29639785999"}], "description": "hiera spec tests need additional tests where hierarchy sent to datasourcefiles so that we can ensure that lookup does not pull from outside the current hierarchy even if the backend yields files that are outside the given hierarchy.\nrepeat for yaml and json backends\n\ninvestigate agnostic lookup tests in this regard as well.\n ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53800", "fixedVersions": [], "id": "53800", "issueType": "Task", "key": "HI-347", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "resolution": "Won't Fix", "resolutionDate": "2016-02-10T14:44:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "acceptance: ensure hiera doesn't leak values across hierarchies", "timeSpent": "PT0S", "updated": "2016-02-10T14:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We still support Ruby 1.9.3 with 4.0.0 right? Even if AIO comes with a newer Ruby - maybe this is not a concern on Windows as people will stick to the one Ruby that is supplied with AIO and not roll their own mix...", "created": "2015-02-25T19:54:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "It's my understanding that with AIO, all platforms are standardized on Ruby 2.1.5.  It's also my understanding that the next version of Hiera is a major breaking release, intended to match up with Puppet 4.  On the Windows side, I think our expectation going forward will be that you're running at least Ruby 2 if you want to run from source.  I'm not sure if that's the same expectation when running from source / gem on other platforms?\n\nPerhaps [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920], [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] or [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e] can correct me / clarify if I'm off here.", "created": "2015-02-25T23:14:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "IMHO this is not blocking for hiera 2.0.0. But nice cleanup to get to.", "created": "2015-03-24T14:06:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Also please check acceptance/Gemfile and make sure we are using a pessimistic version, and not defaulting to {{beaker#master}}", "created": "2015-04-10T11:46:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The way I see it there will never be a HI 4.0.0 release. We will stick with 3.x until it is EOL (most likely at Puppet 6.0.0 release).", "created": "2017-02-07T07:21:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "https://github.com/puppetlabs/hiera/search?utf8=%E2%9C%93&q=win32&type= is a good search to use to find the bits for removal.\n\n* {{win32-dir}} gem looks to be used only for the resolution of {{Dir::COMMON_APPDATA}}\n* {{win32console}} can be removed because I don't think we care anymore about a 32-bit gem on Windows and colorization - no one on Windows has any compelling reason to run a dev workflow against Ruby 1.9.3\n\nThis removes the need for us to ship any Windows platform-specific gems any longer.", "created": "2017-04-17T17:29:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "[~accountid:63d40628f6e1b543161789a7] / [~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] I have put up a PR that removes all the win32 stuff from the Hiera gem.  This should help pave the way for some similar cleanup work in Facter that we're going to want to do as well.", "created": "2017-04-17T21:28:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "merged to stable at https://github.com/puppetlabs/hiera/commit/7dd570e3877830943a4ca6a94733013bb36837ea", "created": "2017-04-27T14:30:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Merged to master in https://github.com/puppetlabs/hiera/commit/82df523", "created": "2017-05-01T14:24:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "this passed hiera CI though https://jenkins-master-prod-1.delivery.puppetlabs.net/view/puppet-agent/view/master/view/Suite/job/platform_puppet-agent_intn-van-sys_suite-daily-hiera-master/69/parameters/ ", "created": "2017-05-03T16:47:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] please provide release notes for this issue, if applicable.", "created": "2017-05-15T10:44:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] ping.", "created": "2017-06-06T07:05:00.000000"}], "components": [], "created": "2015-02-25T17:37:00.000000", "creator": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@419b5259"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-6533"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Risk Assessment", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "No Action"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hylzkf:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Windows"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_526658025_*|*_1_*:*_1_*:*_6592_*|*_10007_*:*_1_*:*_681577466_*|*_3_*:*_1_*:*_7619216_*|*_5_*:*_1_*:*_3594664939_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_67639037743_*|*_10006_*:*_1_*:*_85694542"}], "description": "With a required major version bump for Puppet 4, that means that some of the gems are no longer relevant.\n\nFor instance, {{win32console}} gem is not required in Ruby 2 or above, and Puppet 4 on Windows ships with Ruby 2.1.5.\n\nScrub anything out of {{Gemfile}} and {{ext/project_data.yaml}} that is no longer needed.", "epicLinkSummary": "Reduce external Windows gem dependencies - Phase 1", "estimate": "PT0S", "externalId": "53543", "fixedVersions": ["HI 3.3.2"], "id": "53543", "issueType": "Task", "key": "HI-346", "labels": ["AIO_TechDebt", "windows"], "originalEstimate": "PT0S", "parent": "26068", "parentSummary": "Reduce external Windows gem dependencies - Phase 1", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "resolution": "Fixed", "resolutionDate": "2017-05-03T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Remove Windows platform specific gems win32console / win32-dir from Gemfile", "timeSpent": "PT0S", "updated": "2017-06-14T07:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "[~accountid:557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e] this blocks, somewhat, your PR for acceptance which should work with these changes.", "created": "2015-02-24T16:53:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Blocks testing it with AIO at least.", "created": "2015-02-24T17:01:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "closing this as won't fix.  RE-4044 (see links) to supercede.  \nif anyone needs a quick way to bring up hiera against AIO before RE-4044 is merged, pull in my branch:\n[er0ck:maint/master/HI-345-fix_hiera_pre-suite_for_aio|https://github.com/er0ck/hiera/tree/maint/master/HI-345-fix_hiera_pre-suite_for_aio]", "created": "2015-02-25T11:20:00.000000"}], "components": ["QA"], "created": "2015-02-24T15:22:00.000000", "creator": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@20e9a955"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyken:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_17312_*|*_10007_*:*_1_*:*_66493179_*|*_3_*:*_1_*:*_5417646_*|*_6_*:*_1_*:*_0"}], "description": "the puppet-agent package currently doesn't create the symlinks to all the binaries from :bindir\n\ncreate some work-arounds similar to the pre-suite in puppet repo", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53968", "fixedVersions": ["HI 2.0.0"], "id": "53968", "issueType": "Sub-task", "key": "HI-345", "labels": [], "originalEstimate": "PT0S", "parent": "53913", "parentSummary": "Fix Hiera acceptance under new paths", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "resolution": "Won't Fix", "resolutionDate": "2015-02-25T11:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "fix hiera pre-suite for aio", "timeSpent": "PT0S", "updated": "2015-02-25T11:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "looks like a faulty test - path has changed", "created": "2015-02-23T10:25:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "See [PR 254|https://github.com/puppetlabs/hiera/pull/254] for fixing the pathing issue in the acceptance tests.", "created": "2015-02-23T11:51:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Looks like my ticket HI-340 got overlooked.", "created": "2015-02-24T12:08:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Duplicates  [HI-340]", "created": "2015-02-24T13:05:00.000000"}], "components": [], "created": "2015-02-23T10:10:00.000000", "creator": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@234741c3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyj5b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6006908_*|*_10009_*:*_1_*:*_90903403_*|*_6_*:*_1_*:*_0"}], "description": "See CI failure\n\nhttps://jenkins.puppetlabs.com/job/Hiera-Acceptance-master/208/\n\n{code}\nStandard Error\n\nError: Cannot create /etc/puppet/hieradata; parent directory /etc/puppet does not exist\nError: /Stage[main]/Main/File[/etc/puppet/hieradata]/ensure: change from absent to directory failed: Cannot create /etc/puppet/hieradata; parent directory /etc/puppet does not exist\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53542", "fixedVersions": [], "id": "53542", "issueType": "Bug", "key": "HI-343", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "resolution": "Duplicate", "resolutionDate": "2015-02-24T13:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "REGRESSION hiera acceptance failures due to absence of /etc/puppet/scope.yaml", "timeSpent": "PT0S", "updated": "2015-02-24T13:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Is this a test of the hiera command line tool?\nPing [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d]", "created": "2015-02-23T10:14:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "This is probably because I didn't realize that we had acceptance tests that calls directly on Hiera backends. Sounds like that kind of tests should be covered well by using the Hiera config and its public API. I'll take a look.", "created": "2015-02-23T10:47:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] this also appears to be a test failure, due to the hiera data paths not being correctly interpreted in the test harness. The PR for [HI-343] should also address this test.", "created": "2015-02-23T13:12:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced] the failing paths comes from a variable picked up as agent['hieradatadir']. I'm unable to see where it comes from though. Is this path fed into the test from some external source somehow?", "created": "2015-02-23T14:06:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Ah, forget my last comment. Just looked at HI-343. I agree, it will fix this issue too.", "created": "2015-02-23T14:08:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Duplicates  [HI-340]", "created": "2015-02-24T13:06:00.000000"}], "components": [], "created": "2015-02-23T10:07:00.000000", "creator": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@616c3d8f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyj53:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_97147115_*|*_6_*:*_1_*:*_0"}], "description": "See CI failure:\n\nhttps://jenkins.puppetlabs.com/job/Hiera-Acceptance-master/208\n\n{code}\n  * Try to lookup string data\n\ng8vs6nicup5q5eb.delivery.puppetlabs.net (host) 21:03:28$ hiera http_port\nnil\n\n\nOutput lines did not match.\n--- expected\n+++ actual\n@@ -1,2 +1,2 @@\n-\"8080\n+\"nil\n \"\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54064", "fixedVersions": [], "id": "54064", "issueType": "Bug", "key": "HI-342", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "resolution": "Duplicate", "resolutionDate": "2015-02-24T13:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "REGRESSION acceptance/tests/yaml_backend/02-lookup_data_with_no_options.rb fails to return http_port", "timeSpent": "PT0S", "updated": "2015-02-24T13:06:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "attachments": [], "comments": [{"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] what would you think about me filing a PR against hiera with this in it:\n\nhttps://github.com/cprice404/hiera-hocon", "created": "2016-02-05T11:13:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I much rather have a data provider backend for lookup so it works for data in environments and modules than having it for hiera.\nIt can probably support both with the same code though.", "created": "2016-02-05T19:59:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Oh, I see, it is pretty much just one line that provides all of Hocon. The rest is just error handling and interfacing with hiera. Luckily it is super simple to do the same for Lookup data providers when the source is a file that just needs to be loaded.\n\nHere is the one for Json in Puppet.\ni.e. for Hocon, It is just a name change, and a one line change to read the Hocon (I suppose it returns a hash, much like json and yaml does).\nhttps://github.com/puppetlabs/puppet/blob/d2199af906fa5ca19ec0c37c82794934ea4fb4b5/lib/puppet/data_providers/json_data_provider_factory.rb\n\nI addition to writing the HoconDataProviderFactory class, it needs to be registered. If you want to include it in puppet, then it is registered like the Json factory - see here: https://github.com/puppetlabs/puppet/blob/d2199af906fa5ca19ec0c37c82794934ea4fb4b5/lib/puppet/plugins/data_providers/registry.rb#L73\n\nDo we have hocon as a dependency in ruby? If not than that is also needed.\n\nFYI (and for others), when/if delivering a data provider in a module, a bit of meta data is needed to add the implementation to the registry, and it needs to be in the module's namespace under Puppetx.\n\nSo - I think you should do both: to hiera, and to puppet data providers.\n\nIn the hiera case there needs to be some unit tests. As there is a quite a bit of functionality. In the data provider case, one of the other tests that test data providers json and yaml can be modified. We have no unit tests specifically for the factory classes", "created": "2016-02-05T20:17:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] we already ship the hocon gem with puppet-agent, right?\n\n[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] assuming that ^^ is true, then it sounds like the next steps here would be:\n\n* PR against hiera that adds this backend and some tests\n* PR against puppet that defines the HoconDataProvider, registers it, and adds tests?", "created": "2016-02-08T10:32:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "We're currently shipping 0.9.3 of ruby-hocon: https://github.com/puppetlabs/puppet-agent/blob/1.3.5/configs/components/rubygem-hocon.rb#L1-L2.", "created": "2016-02-08T13:19:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:a3132145-aae4-410f-9f7a-85a3117a0c14] Yes, sounds like a plan. Ping me or [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] if you have questions or need any help.", "created": "2016-02-08T13:33:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] thanks, will do.  Not sure exactly how soon this might be happening, but knowing the next steps is a good start!", "created": "2016-02-08T13:36:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "I created an epic for this and will probably break this down into multiple tickets when we get closer to working on it.", "created": "2016-02-11T11:53:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Just FYI, I'm still planning on creating a ticket to add the same capability to the lookup type soon, and we'll pick that up after we work out all of the kinks on the hiera one.\n\nA few random UX questions on this:\n\n1. What file extension should we use for hocon files?  We've been using {{.conf}} everywhere else that we've been using HOCON, so my inclination is to stick with that.  Alternately, we could use {{.hocon}} to make it more explicit, but that seems inconsistent.  A third option would be to try to support both.  [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] / [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] / [~accountid:70121:690f8c77-a5af-4d4c-96f0-c3c253283fd2] / [~accountid:623cfc5b01f8660070b787cf] : any opinions?\n2. Should we also try to add support for (optionally) having a {{hiera.conf}} file instead of {{hiera.yaml}} file?  Seems inconsistent to only support it for the data but not for the main config file.  If there is consensus that we should try to do that, I'll carve a separate ticket for that as well.\n\n/cc [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] - you may also have opinions on these topics.", "created": "2016-07-06T17:09:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "My $.02: \n* stick with {{.conf}}. Having two extensions for hocon files sounds confusing.\n* supporting {{hiera.conf}} would be bonus, but I wouldn't worry that they need to both roll out in the same release. Also note that hiera.yaml is known to puppet (not just hiera), so there may be two tickets.\n", "created": "2016-07-06T17:40:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] - cool - I agree with both of those and thanks for the heads up re: puppet.", "created": "2016-07-06T17:42:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I find it really strange that {{.conf}} files are used for \"data\" as the name indicates intent (configuration). I think {{.conf}} should be reserved for configuration files (there the content-schema is implied by the name), and that we use {{.hocon}} for everything else (generic hocon data, possibly under the control of some unspecified schema). I think the distinction will also help when talking about the files - what does \"my hiera conf file\" refer to?, my hiera file containing data for puppet named \"puppet.conf\", etc.\n\nUsing {{hiera.conf}} instead of {{hiera.yaml}} is a lengthier discussion - so, separate tickets needed. ", "created": "2016-07-07T04:36:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "+1 to what [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] said, data should not be `.conf`", "created": "2016-07-07T04:48:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:a3132145-aae4-410f-9f7a-85a3117a0c14] Forgot to mention - I added a PUP ticket to the \"lookup hocon support\" epic for the data binding hocon implementation.", "created": "2016-07-07T05:01:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] - thanks for creating that other ticket.  I'll add some comments over there.\n\n[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] & [~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd] - what you are saying about the {{.conf}} extension not making sense for data files does resonate with me... that was part of the reason why we used {{.hocon}} for the original PR.  [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] does this sway your opinion at all?\n\n[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] - agreed, will create a separate ticket re: the main {{hiera.yaml}} config file.", "created": "2016-07-07T10:41:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "That's a interesting point, about {{.conf}} for data files. It doesn't give me cognitive friction but it clearly does others, so I'm inclined to defer to the consensus and I'm +1 on using {{.hocon}} here.\n\nSlightly OT though: this does make me question why we're using {{.conf}} for other hocon files in our ecosystem. As far as I know, it's the only file format in our stable (json, yaml) where the convention/default isn't to use the format acronym itself as the extension (well {{puppet.conf}} is its own weird exception to every rule). So question: going forward, should we default new hocon files to be {{.hocon}} rather than {{.conf}}? That would be consistent with {{.json}} and {{.yaml}}, and would avoid future config/data concerns. This is a timely question btw, see FACT-1436.", "created": "2016-07-07T12:33:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "As mentioned there are now many formats of file involved. And even multiple sub formats of file (eyaml being yaml with strict internal structure ideas for example)\n\nHOCON even looks a lot like JSON and if you don't know better or the file in question has no HOCON features in use like comments and such you would have to refer to docs or something\n\nSo I like just calling things what they are as long as there are actual standards for what it is. When a config file is some made up thing well then a generic .conf communicates on its own that you're probably in for a bad time involving spelunking to figure out syntax rules. ", "created": "2016-07-07T12:57:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "The original decision to use `.conf` was probably because that is what the HOCON library assumes by default, and is the extension that most apps that consume HOCON use in the wild.\n\nIt's fair to point out that that may or may not be a reasonable or compelling reason to use that extension for our files.  However, there is a lot of prior art in the current Puppet products that uses that extension, so it would be non-trivial to change.\n\nMy proposal for now would be:\n\n* Use {{.hocon}} for the hiera data files because the points about those files being data rather than config seem compelling.\n* Use {{.conf}} for any net-new config files that we add in the near term (assuming that they are actually config files).  This will at least be consistent with all of the existing PE config files, and that seems like a better short-term strategy than introducing another discrepancy for facter and assuming we'll rename all of the other ones later.\n* Spin off a separate ticket, probably directed towards the UX team, to consider the pros and cons of doing a sweeping rename of all of the existing hocon {{.conf}} files over to use {{.hocon}}, and if we decide to do that, do it all in one fell swoop.\n\nThoughts?", "created": "2016-07-07T13:22:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "[~accountid:557058:a3132145-aae4-410f-9f7a-85a3117a0c14] +1", "created": "2016-07-07T14:12:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Tossing more fuel into the formats and suffix fire...\n\n{{puppet.conf}} is configuration of puppet in puppet specific format (similar to INI file). It would be better to use something like {{puppet_conf}} as the filename, and then a suffix that denotes the format. Changing format of puppet.conf (in puppet invented format) to puppet.conf (in hocon) seems problematic.\n\nAs many files are read into strings before processing, it is of value to also include the meta data in the file itself as we did for XPP.\nThis is easy for something like HOCON since comments are supported. A HOCON file could begin with a comment that specifies the mime type and the expected content and the version of that content schema the content is authored for.\n\nCould be fully specified like this:\n{code}\n# application/hocon", "created": "2016-07-07T14:13:00.000000"}, {"author": "557058:7948aec2-bc51-47d8-8a79-7ca9a48364e7", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] I'm not a fan of *requiring* this as I think it will be confusing to a lot of new users.\n\nAlso, if it is supported, I would make it VIM-style at the bottom of the doc.", "created": "2016-07-07T14:23:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c0c08866b810069e434be] - the idea comes from serialization where it out of necessity is first. Our serializations stored in a container will in the future contain something like that envelope, and it was just a thought that it may be of value in human written data files as well as it certainly helps a lot. If such meta data is supported, the assumptions if it is missing would be \"it has expected content of latest version\" (or something similar).\n", "created": "2016-07-07T14:34:00.000000"}, {"author": "557058:bab073e0-f060-421e-9465-366c4060cc31", "body": "Ping [~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715]... Looking for Risk Assessment fields...", "created": "2016-07-08T11:40:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:a3132145-aae4-410f-9f7a-85a3117a0c14] +1", "created": "2016-07-08T11:46:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] thanks.\n\n[~accountid:557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df] / [~accountid:70121:690f8c77-a5af-4d4c-96f0-c3c253283fd2] : do you have any input on this?  Here's a tl", "created": "2016-07-08T12:12:00.000000"}, {"author": "557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df", "body": "{quote} So, we intend to use a {{.hocon}} extension for those data files.{quote}\n\nThat sounds reasonable. Except. I can't find anything other than a [ticket at the typesafe/config project|https://github.com/typesafehub/config/issues/45] that mentions the extension as a thing that exists in the world. \n\nSo I'll step back to be an ass and suggest: Why do we need to do this anyway? If Hiera is intended to read machine-optimized *data* files, what's wrong with JSON? I get the consistency argument for *configuration* file format. If we're talking about a totally separate problem, is HOCON actually suited to solving it?\n\n{quote}Separately, we may want to have a discussion in the future about whether our existing HOCON config files in Puppet/PE should also be renamed from {{.conf}} to {{.hocon}}, but since that would be a costly and disruptive change, we do not intend to pursue it for now.{quote}\n\nPlease don't do that. The {{conf.d/foo.conf}} pattern is clear and reasonable.", "created": "2016-07-08T13:57:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "{quote}\nSo I'll step back to be an ass and suggest: Why do we need to do this anyway? If Hiera is intended to read machine-optimized data files, what's wrong with JSON? \n{quote}\n\nI wouldn't describe hiera data files as \"machine-optimized data files\".  I think that most users probably edit them by hand and maintain them in their VCS trees.  We currently support both YAML and JSON for them, the user can choose, but we have gotten requests from the community to try to be more consistent about our config file formats, and in particular these files.  (n fact this particular ticket was filed by an open source user.)\n\n{quote}\nPlease don't do that. The conf.d/foo.conf pattern is clear and reasonable.\n{quote}\n\nThat's fine by me", "created": "2016-07-08T18:07:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "This has also been requested internally by several parties, and in fact MEEP is using an unofficial version of this to implement its PE infrastructure configuration.", "created": "2016-07-08T19:12:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Agree with [~accountid:557058:a3132145-aae4-410f-9f7a-85a3117a0c14] that hiera data files are (mostly) authored by humans. There are many issues where folks get yaml syntax wrong (more so than Json), and I think hocon format will help them (seems easier to not screw up).", "created": "2016-07-09T03:28:00.000000"}, {"author": "557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df", "body": "OK. Sounds reasonable. +1 to {{.hocon}} then, I guess. We'll set the precedent! ", "created": "2016-07-11T11:10:00.000000"}, {"author": "557058:fb0bff9d-dc4d-45f3-b875-a76700f9736c", "body": "[~accountid:623e7a779b54ec0068b2844b] to follow up on concerns around changes to Hiera.", "created": "2016-09-21T14:45:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] should we move this to your other epic as well?", "created": "2016-09-29T12:32:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:a3132145-aae4-410f-9f7a-85a3117a0c14] Yes, all feature work on lookup/hiera can go to that epic.", "created": "2016-09-29T13:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as \"won't do\" we are not going to act on this. For the cases where this is believed to be needed there seems to be the need to rethink anyway.", "created": "2016-12-14T14:01:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "See PUP-6476 where hocon backend is added to puppet.", "created": "2017-01-10T07:55:00.000000"}], "components": [], "created": "2015-02-23T08:23:00.000000", "creator": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@66adacdd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-6484"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623c0ff494742a00683e3fe4"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hylw0n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Puppet Server"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_42417175872_*|*_10007_*:*_1_*:*_168526437_*|*_3_*:*_1_*:*_350984203_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_13818289382_*|*_10006_*:*_1_*:*_289341237"}], "description": "There was recent discussion on the Puppet Dev list about the new configuration format being HOCON.\n\nTo provide environment-wide consistency, Hiera should also support a native HOCON back end.\n\nAlso, a conversion script should be provided to convert existing YAML and JSON data to HOCON (though JSON should 'just work').", "environment": "Any", "epicLinkSummary": "Productize 'lookup'", "estimate": "PT0S", "externalId": "53750", "fixedVersions": [], "id": "53750", "issueType": "Improvement", "key": "HI-341", "labels": [], "originalEstimate": "PT0S", "parent": "27001", "parentSummary": "Productize 'lookup'", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "resolution": "Won't Do", "resolutionDate": "2016-12-14T14:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera should support native HOCON to match Puppet Server", "timeSpent": "PT0S", "updated": "2018-09-11T07:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]", "created": "2015-02-20T16:52:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "PR #256 was closed as duplicate of RE-4044.\n\nthis will pass against git install, but not yet against AIO until RE-4044", "created": "2015-02-25T11:23:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "verified these on rhel7 and ubuntu13 against AIO and non-aio (git install).", "created": "2015-02-25T12:00:00.000000"}], "components": [], "created": "2015-02-20T16:29:00.000000", "creator": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@48ce4ba1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyiqf:"}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Found"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "AIO"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1310070_*|*_1_*:*_1_*:*_6457_*|*_10007_*:*_1_*:*_412253552_*|*_3_*:*_1_*:*_1361819_*|*_5_*:*_1_*:*_2440183860_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_917710"}], "description": "Hiera acceptance tests haven't been fully updated for the new vardir paths, as described in https://github.com/puppetlabs/puppet-specifications/blob/master/file_paths.md. Update the tests to query Puppet for the correct paths and use them in all tests so they pass.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53913", "fixedVersions": ["HI 2.0.0"], "id": "53913", "issueType": "Bug", "key": "HI-340", "labels": ["AIO"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "resolution": "Fixed", "resolutionDate": "2015-02-25T12:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Fix Hiera acceptance under new paths", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as Won't Do as Hiera 5 has a very different API for its backends where it is no longer required to be able to skip on errors like in the old hiera 3 implementation.", "created": "2017-08-21T10:19:00.000000"}], "components": [], "created": "2015-02-17T17:54:00.000000", "creator": "623c11f294742a00683e4137", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@767ae988"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyf3b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_79111454736_*|*_6_*:*_1_*:*_0"}], "description": "Hiera allows for a variety of backends. If a piece of data is not found from a backend, the search continues in the next backend. This makes sense as the data may be in a different file or a different data source.\n\nIf the data source fails (such as a malformed YAML file or a broken database connection), the system will silently traverse. This a relaxed and forgiving approach that would likely work in many scenarios.\n\nIt would be ideal, if the a backend (or hierarchy) could be specified in a strict mode. In this mode, the data sought may not be in a particular source but the source must exists. \n\nIdeally the same type of datastore could be added in the default mode. This would allow for some hierarchies to be strict and others to be relaxed.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53749", "fixedVersions": [], "id": "53749", "issueType": "New Feature", "key": "HI-339", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c11f294742a00683e4137", "resolution": "Won't Do", "resolutionDate": "2017-08-21T10:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "allow for strict or validated mode for backend", "timeSpent": "PT0S", "updated": "2017-08-21T10:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Totally agree that being able to explain where data is coming from is very valuable. Going forward (since PUP-1640 agnostic lookup mechanism) and PUP-3948 (make lookup be the agnostic lookup function) and with what we plan to do with hiera in 4.1.0 we may want to hold off on making changes to the free standing hiera commands.\n\n* With PUP-1640, there can be other \"backends\" than hiera backends, and they can lookup inside modules, and inside the environment. It does not make sense that the hiera command (in the hiera  projects) a) is used to lookup in these (it only looks up in the global hiera), and b) it cannot know about data in environments and modules so it can neither lookup there nor explain why a parameter got a particular value.\n\n* When PUP-3948 is in place we have a powerful lookup function. We should then add a command line tool that provides access to that plus options like --explain, testing it for a given node, with a given set of facts, etc. (Basically the hiera command revamped). For this functionality I would like to write a specification before starting to hack on it. (We do not yet have a ticket for this - we are currently talking about the steps we want to take after 4.0.0 has been released.\n\nWith all of that going on, I am in general reluctant to add more features/code in hiera that needs refactoring.", "created": "2015-02-17T15:02:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed as Won't Do as explain functionality is part of hiera 5. We will not add such features to the old and deprecated hiera 3 implementation.", "created": "2017-08-21T09:59:00.000000"}], "components": [], "created": "2015-02-17T12:59:00.000000", "creator": "557058:ddaa4b87-3b61-49bb-98f9-56fd02cdbb6b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6995adc6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyeov:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_79127988434_*|*_6_*:*_1_*:*_0"}], "description": "It would be super helpful to have {{explain}} functionality to describe how Hiera would resolve data sources.\n\nhttps://github.com/puppetlabs/hiera/pull/246", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53795", "fixedVersions": [], "id": "53795", "issueType": "New Feature", "key": "HI-338", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:ddaa4b87-3b61-49bb-98f9-56fd02cdbb6b", "resolution": "Won't Do", "resolutionDate": "2017-08-21T09:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Should have explain functionality", "timeSpent": "PT0S", "updated": "2017-08-21T09:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The only possible meaningful nil entries in an array is if the order is significant (and known). It cannot be when collecting values across multiple levels in the hierarchy.\n\nMy suggestion is to raise an error since a) if there are legitimate cases where this is of value, it is easier to not making it an error than going in the other direction, and b) having nils in collected arrays is an indication that something is wrong in the data.\n\nRaising errors is very slow in ruby (10x slower than a {{throw}}). One approach is to pass a code block that is called when 'not found' is detected. It is then up to the caller if caller wants to raise an error (because it is an error not not find anything in that use case), use a faster throw that it catches and continues, a block that continues the search somewhere else, or simply return a default value.", "created": "2015-02-17T05:14:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I just submitted a PR. It's done with a \"keep the change to a minimum\" mindset. The array case will raise an error since nil is neither a string or an array (as it did before for all other values).", "created": "2015-02-17T06:51:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to master at: https://github.com/puppetlabs/hiera/commit/83c81c14a90ba453b72955057597c7a485c339a3", "created": "2015-02-17T17:02:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] please update the predocs with information about the change in the backend API (we added something for another ticket IIRC, that should be updated and then mention where the info is here a well (or mark the predocs as being for this ticket as well so docs team can cross reference).", "created": "2015-02-18T05:38:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "verified on ubuntu14 at SHA: 17afe97\n{code}\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# cat ../hiera.yaml\n---\n:backends:\n  - yaml\n  - json\n:hierarchy:\n  - defaults\n  - \"%{clientcert}\"\n  - \"%{environment}\"\n  - global\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\hiera\\var on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n:json:\n  :datadir:\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# cat global.yaml\nfoo: baramu\ndefined_nil: nil\nniltest: 'Missing key #%{hiera(\"knotfound\")}#. Key with nil #%{hiera(\"knil\")}#. Key with null #%{hiera(\"knul\")}#'\nknul: null\nknil: nil\narray_with_null:\n  - val1\n  - null\n  - val3\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# cat global.json\n{\n    \"foo\" : \"barjson\",\n\n    \"array_with_null\" : [\n         \"valA\",\n         null,\n         \"valC\"\n    ],\n\n    \"jniltest\" : \"Missing key #%{hiera('knotfound')}#. Key with null #%{hiera('jknul')}#\",\n\n    \"jknul\" : null\n}\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera niltest\nMissing key ##. Key with nil #nil#. Key with null ##\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera jniltest\nMissing key ##. Key with null ##\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera --array array_with_null\n[\"val1\", \"val3\", \"valA\", \"valC\"]\n\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera doesntexist default1\ndefault1\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera doesntexist nil\nnil\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera doesntexist null\nnull\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera knil nil\nnil\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera knul nil\nnil\nroot@sprmkcgs2s4k48e:/etc/puppetlabs/code/hieradata# hiera doesntexist\nnil\n{code}\n\nwe probably need more testing on the null array value cases.  i'll make a note in the hiera testing ticket...\nonly interpolation will return empty string, like interpolation in other areas of puppet (see comments above).  non-interpolation lookups return nil.  specs cover some of this", "created": "2015-02-18T12:31:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c08e1562ab90069f8aed4] description and predocs the hiera/lookup-2.x-api.md\" document have both been updated. ([~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d], you are off the hook, but please add to, or change the description/predocs if there was something I missed.\n\nNick, it started with just one small change in the backend, but then more things were added to the 2.0 API. Naturally a 2.0 compliant backend needs to implement all of the changes. The hiera implementation will detect if it is a new (2.0) or old (1.0) backend based on the signature of the backend's lookup method (number of parameters it takes). Not sure how much documentation we have regarding how to implement a backend - happy to review it (or help modifying it). Let us know.", "created": "2015-03-23T15:05:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Oh, this signature detection thing is completely new to us. Was that described anywhere? My understanding was that if you programmed to accommodate parts of the new behavior, you got the new behavior a la carte. \n\nIf the lookup method signature takes four arguments, does Hiera 2's behavior exactly match what we describe here? https://docs.puppetlabs.com/hiera/1/custom_backends.html Or is it a slightly modified version of the 1.x api? If it's exact, we should be able to just add a note to the top of the custom backends page, linking back to the previous version...", "created": "2015-03-23T15:14:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Is \"raise an exception\" the correct way to describe what's happening here? [It sounds like that's not quite right.|http://stackoverflow.com/questions/51021/what-is-the-difference-between-raising-exceptions-vs-throwing-exceptions-in-ruby] Is there another way to describe this? What happens if the backend author uses `raise` instead? (I assume it blows up)", "created": "2015-03-23T15:20:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I think it is better to say \"throw the symbol : no_such_key\" since that is what the ruby could will say {{throw : no_such_key}} - the ruby term is \"throwing an exception\" (as opposed to \"raising an error\"), but better be explicit about what is thrown (the symbol {{: no_such_key}}.", "created": "2015-03-23T15:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c08e1562ab90069f8aed4] the signature detection is based on the signature of the backend's {{lookup}} method. It is described in the predocs. The pre-docs does not say though that hiera 1.0 backend semantics are retained for all the duties performed by a backend. Note that a lot of the behavior of hiera is implemented in the backends (recursion guards, nil value vs. not found etc.). Hiera 2.0 creates a wrapper around 1.x backends and that wrapper adapts the old behavior.", "created": "2015-03-23T15:54:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] You mean {{throw :no_such_key}}, right? ", "created": "2015-03-23T16:04:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c08e1562ab90069f8aed4] I think it is a good strategy to describe the Hiera 2.0 API for the backend and link back to the 1.x documentation for the method having the 1.x signature. The 2.x. signature is described in pre-docs.", "created": "2015-03-23T16:05:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c08e1562ab90069f8aed4] yes, doh... will fix my bad comments", "created": "2015-03-23T16:15:00.000000"}], "components": ["DOCS"], "created": "2015-02-17T03:23:00.000000", "creator": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@53bb4917"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyefb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_28296982_*|*_1_*:*_1_*:*_7559151_*|*_10007_*:*_1_*:*_37010378_*|*_3_*:*_1_*:*_4719195_*|*_5_*:*_1_*:*_3041758109_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_43034956"}], "description": "UPDATE\n----\nThe hiera backend API for Hiera 2.0 defines (among other things such as accepting a recursion guard), that the backend should raise \nan exception as the result of a lookup that produces no result instead of returning nil. This to differentiate between the result of an explicit nil\nand not found.\n\nA backend that complies with the new API should do this when the result is 'not found':\n{code}\nthrow (:no_such_key)\n{code}\n\nNote that Hiera 2.0 is backwards compatible with existing backends - older backends that return nil is interpreted as \"not found\", vs. 2.0 compliant\nbackends (i.e. the yaml and json backends delivered with hiera 2.0) that can return nil.\n\nORIGINAL\n----\nA hiera backend will return nil when no value is found for a given key. It will do the same if the key is found but associated with a nil value. This makes it impossible to distinguish between the two cases.\n\nA possible solution for this would be if the backend would throw an exception when the key does not exist. Hiera could then catch this exception and, when no backends find the given key, resort to the default value (or extras hash). If a nil value is found however it's treated as any other value and the default handling would not kick in. This enables the caller to provide a default value that acts as a placeholder for 'not found' and then check the returned value. If nil is returned, then nil was found. If the given default is returned, then there was no match for the key.\n\nOne thing to consider with this approach is what impact valid nil values have on the 'array' lookup. Are they legal at all? (currently only String and Array are allowed), and if so, should the resulting array be compacted at the end?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54033", "fixedVersions": ["HI 2.0.0"], "id": "54033", "issueType": "Improvement", "key": "HI-337", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "resolution": "Fixed", "resolutionDate": "2015-02-18T12:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera Backends should distinguish key with null value from key not found", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["QA"], "created": "2015-02-13T14:43:00.000000", "creator": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@754dad01"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyye1j:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1551009957_*|*_3_*:*_2_*:*_59309770_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_26347332"}], "description": "add some \"doesn't grab stuff in the wrong hierarchy\" type spec edge cases...\n\nQA portion of this is done.  \nhiera spec tests need a hierarchy sent to datasourcefiles \nso that we can ensure that lookup does not pull from outside the current hierarchy even if the backend yields files that are outside the given hierarchy.\nrepeat: yaml and json backends\n\ninvestigate agnostic lookup tests in this regard as well.\n\nwill open another ticket for spec test additions", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53966", "fixedVersions": [], "id": "53966", "issueType": "Task", "key": "HI-336", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "resolution": "Fixed", "resolutionDate": "2015-03-04T13:21:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "investigate edge cases to ensure hiera lookup doesn't contain values from outside hierarchy", "timeSpent": "PT0S", "updated": "2015-05-05T16:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Already fixed as part of HI-274", "created": "2015-02-27T08:43:00.000000"}], "components": [], "created": "2015-02-10T14:34:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6cb8a95d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyylhj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_130734_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1447589027"}], "description": "There is a reference in the source to an older deep merge gem that is no longer in use - please update the URL to this https://github.com/danielsdeleo/deep_merge (it is a fork of the original).", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53619", "fixedVersions": [], "id": "53619", "issueType": "Bug", "key": "HI-334", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Trivial", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Duplicate", "resolutionDate": "2015-02-27T08:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "fix reference to deep merge gem", "timeSpent": "PT0S", "updated": "2015-03-10T11:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:6243977a4fe01d006ba5afc5] Will need to look into this further to confirm, but I believe that this may be related to your environment cache settings?  In other words, if you flush your environment cache or wait for it to timeout, are the hiera changes picked up afterward?\n\nhttps://docs.puppetlabs.com/puppetserver/1.0/admin-api/v1/environment-cache.html", "created": "2015-02-09T15:15:00.000000"}, {"author": "6243977a4fe01d006ba5afc5", "body": "I doubt it is related to cache because my environment configuration has this setting:\n\nenvironment_timeout = 30s\n\nI spent more than 30 seconds wondering why my client was not picking up the hiera.yaml changes. Although a restart of the puppet server service did fix the problem, I was seeing other changes in my environment that would not have showed up unless the cache expired.", "created": "2015-02-09T16:16:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "OK, good to know.  Sounds like it's being cached somewhere else besides the environment cache.  Will explore when we get a chance, thanks for the report.", "created": "2015-02-09T18:20:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "I'd expect this is related to [HI-46] -- Hiera is instantiated as a singleton in the Puppet code and isn't subject to the environment cache. ", "created": "2015-02-09T18:25:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:6243977a4fe01d006ba5afc5] There is also the jruby pool flush endpoint: https://docs.puppetlabs.com/puppetserver/1.0/admin-api/v1/jruby-pool.html  Maybe this will help for now?", "created": "2015-02-17T17:42:00.000000"}, {"author": "557058:a3132145-aae4-410f-9f7a-85a3117a0c14", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] do you know if this is something that has ever been discussed for hiera?", "created": "2015-02-17T17:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "TL", "created": "2015-02-17T18:21:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "My comment above was perhaps a bit unclear. The global singleton hiera is loaded once and requires a restart. Hiera reloads changed data files (it is the backend that does this). We are planning to change the configuration file loading when we add support for data in modules and environments.\n\nThe problem is in Hiera, and not in Puppet Server - although it could be mitigated by running multiple JRuby sandboxes (starting a new master, taking the old one down) rather than restarting the entire Puppet Server.", "created": "2015-02-23T17:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Linked this to the \"Data in Modules\" epic since that is the umbrella for the work on hiera to change this.", "created": "2015-02-23T18:02:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Closing as won't fix - the puppetserver supports HUP which reloads config now, and hiera5 files are reloaded upon HUP. ", "created": "2017-01-30T15:31:00.000000"}], "components": [], "created": "2015-02-06T21:18:00.000000", "creator": "6243977a4fe01d006ba5afc5", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2a807162"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-42"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623c0ff494742a00683e3fe4"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0gk7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1454531984_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_61078248723"}], "description": "I made a change to my Hiera configuration to add another line to the :hierarchy: yaml section. I was struggling to find out why it wasn't being picked up especially when the values returned correctly through local Vagrant testing and running the `hiera` command line tool on the Puppet Server instance.\n\nIt finally occurred to me that I had to restart all of my Puppet Server instances for it to take the change. It would be nice if I did not have to restart or send a signal to the Puppet Server just to see an update in my hiera.yaml.\n\nIs this documented somewhere? Can re-reading the hiera configuration without intervention be implemented?\n\nThanks.", "environment": "CentOS 7", "epicLinkSummary": "Support data and puppet extensions contributed from modules", "estimate": "PT0S", "externalId": "53727", "fixedVersions": [], "id": "53727", "issueType": "Improvement", "key": "HI-344", "labels": ["hiera"], "originalEstimate": "PT0S", "parent": "28102", "parentSummary": "Support data and puppet extensions contributed from modules", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "6243977a4fe01d006ba5afc5", "resolution": "Won't Fix", "resolutionDate": "2017-01-30T15:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera configuration file periodic reload?", "timeSpent": "PT0S", "updated": "2017-03-01T17:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "body": "I have submitted [a pull request that implements this functionality|https://github.com/puppetlabs/hiera/pull/240].", "created": "2015-02-04T20:06:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This creates a circular dependency between hiera and puppet - it simply cannot be done this way, the result is not maintainable.\n\nI also very much question if the tools used to manually check / lookup data in hiera data backends should also be used to query for data in puppet db.\n\nClosing as won't fix.", "created": "2015-02-05T02:53:00.000000"}, {"author": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "body": "bq. This creates a circular dependency between hiera and puppet - it simply cannot be done this way, the result is not maintainable.\n\nThere already is a circular dependency between hiera and puppet.  The inventory service lookup places a dependency on puppet.\n\nbq. I also very much question if the tools used to manually check / lookup data in hiera data backends should also be used to query for data in puppet db.\n\nWhy?  If you want to check that hiera will work for a particular node, you need the facts for that node.  With the inventory service going away, PuppetDB is the primary way of doing that.", "created": "2015-02-05T14:16:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I am sorry, but there are no dependencies from Hiera to puppet (that I am aware of) but there are implementations of Hiera APIs in Puppet, but not the other way around. We simply cannot have circular dependencies - we must be able to release Hiera and puppet in the right order. And if such dependencies should indeed exist they should be removed.\n\nAdding circular dependencies is out of the question.\n\nThanks for explaining the use case - I do see why you want to do something like that with real data from nodes. In order to make it work, any changes required in hiera will need to be able to work on their own (possibly do nothing, raise an error etc.). The functionality you want can then be added to puppet so it can extend hiera when they are both used together. \n\nIn the PR, you asked if it was a better idea to add direct calls to PuppetDB. Again, sorry, Hiera is freestanding, and needs to be able to work (and be fully tested) on its own, direct calls will make it depend on PuppetDB. You can add it to Puppet, as long as the query to PuppetDB goes via the APIs that are not PuppetDB specific. This because Puppet does not have a hard dependency on PuppetDB. It has a dependency on Hiera though, so it can add things to Hiera given that it is supported by Hiera.\n\nI think the wanted functionality is best developed as a Puppet module that depends on Puppet, Hiera and PuppetDB. If you need instrumentation in Hiera to make it possible to plugin the behavior, then we can make that happen - it did not look like you needed special instrumentation in Puppet.\n\nSorry that integration is difficult.\n", "created": "2015-02-05T18:53:00.000000"}, {"author": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "body": "I'll respond to the rest later but I want to point out that the Hiera binary tool already has a dependency on Puppet.  Several, actually.  The following lines are all pulled from [the most recent commit on the stable branch|https://github.com/puppetlabs/hiera/blob/5b71548ca9ea9ced460b2970c3e8fb483b495806/bin/hiera] and [are still present in the most recent commit on master|https://github.com/puppetlabs/hiera/blob/6f7933829b5e71b7f51dd0437f4678cfa7debca4/bin/hiera].\n\n[From the inventory service fact source|https://github.com/puppetlabs/hiera/blob/5b71548ca9ea9ced460b2970c3e8fb483b495806/bin/hiera#L99-L106]:\n{noformat}\nbegin\n  require 'puppet/util/run_mode'\n  $puppet_application_mode = Puppet::Util::RunMode[:master]\n  require 'puppet'\n  Puppet.settings.parse\n  Puppet::Node::Facts.indirection.terminus_class = :rest\n  scope = YAML.load(Puppet::Node::Facts.indirection.find(source).to_yaml)\n  # Puppet makes dumb yaml files that do not promote data reuse.\n  scope = scope.values if scope.is_a?(Puppet::Node::Facts)\nrescue Exception => e\n    STDERR.puts \"Puppet inventory service lookup failed: #{e.class}: #{e}\"\n    exit 1\nend\n{noformat}\n[From the yaml fact source|https://github.com/puppetlabs/hiera/blob/5b71548ca9ea9ced460b2970c3e8fb483b495806/bin/hiera#L68-L78]:\n{noformat}\nbegin\n    require 'puppet'\nrescue\nend\n\nscope = YAML.load_file(source)\n\n# Puppet makes dumb yaml files that do not promote data reuse.\nscope = scope.values if scope.is_a?(Puppet::Node::Facts)\n{noformat}\nFurthermore, this change would not be in the Hiera core, only the binary tool, which isn't included when Puppet makes a dependency on Hiera.  Additionally, the code I submitted in my pull request was taken directly from code already used for the inventory service fact lookup, with the only changes being that it:\n# uses the PuppetDB facts terminus instead of the rest facts terminus\n# verifies that the PuppetDB facts terminus is present first, so that it can present a useful error message if it isn't\n# uses the information I gained while writing [a fix|https://github.com/puppetlabs/hiera/pull/239] for HI-282 to initialize Puppet properly\n\nIf Puppet isn't present, it raises an error saying so.  If the PuppetDB facts terminus isn't present, it raises an error saying so.", "created": "2015-02-05T20:45:00.000000"}, {"author": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "body": "As a side note, the yaml fact source code remove its dependency on Puppet by using [the safe_yaml gem|https://github.com/dtao/safe_yaml] to load yaml facts.  Right now, if Puppet isn't present, it'll crash during the call to {{YAML.load_file(source)}}.  The yaml fact source would look like this when using safe_yaml:\n{noformat}\nwhen :yaml\n  raise \"Cannot find scope #{type} file #{source}\" unless File.exist?(source)\n\n  require 'safe_yaml/load'\n\n  scope = SafeYAML.load_file(source)\n\n  # Puppet makes dumb yaml files that do not promote data reuse.\n  scope = scope['values'] unless scope['values'].nil?\n{noformat}\nThough this would cause issues if for some reason there were a fact named \"values\".  There may be a better heuristic that could be used there, though, that wouldn't have that problem.  Maybe {{scope = scope['values'] if scope['values'].class == Hash}}?  Though that could cause problems if there were a composite fact named \"values\".  Hm.", "created": "2015-02-05T22:12:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d] Thanks for educating me, I clearly only had a superficial understanding of what was in the bin/hiera file (did not find the things I was looking for because the file does not have .rb as a suffix - doh).\n\nThe construct and dependencies are just horrible. No wonder that there is poor test coverage. This adds more reasons to refactor the hiera code (long overdue). Will consult with others how to handle this ticket (ping [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920]): Should we add more to the pile of troublesome code because it is a valuable feature, or defer until after a refactor of hiera?", "created": "2015-02-06T05:50:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as a Won't Do as this is for the hiera 3 implementation. The new CLI for {{lookup}} (replacing the hiera CLI) has PDB integration (and much more).", "created": "2017-08-21T09:58:00.000000"}], "components": [], "created": "2015-02-04T19:39:00.000000", "creator": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5adf7418"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy8db:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_80186171578_*|*_6_*:*_2_*:*_40955129"}], "description": "With the inventory service deprecated in Puppet 3.7 and removed in Puppet 4.0 in favor of PuppetDB, there should be a way for the hiera command-line tool to retrieve facts from PuppetDB instead.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53726", "fixedVersions": [], "id": "53726", "issueType": "New Feature", "key": "HI-333", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "resolution": "Won't Do", "resolutionDate": "2017-08-21T09:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera command line tool should support looking up facts from PuppetDB", "timeSpent": "PT0S", "updated": "2017-08-21T09:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Since we are taking another approach with data lookup, this does not have to be done.", "created": "2016-02-02T21:29:00.000000"}], "components": [], "created": "2015-01-28T12:37:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@26185dcb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy3p3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9679_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_31999910970_*|*_10005_*:*_1_*:*_13144"}], "description": "In HI-328 version 1x backends are tolerated and a debugging message is logged. Since 1x backends will not be supported in Hiera 3.x deprecation warnings needs to be issued for people not running with debugging to allow this change to be visible.\n\nPlease add a deprecation warning.\n\nAlso see HI-330 which is the removal of the support for 1x backends.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53912", "fixedVersions": [], "id": "53912", "issueType": "Improvement", "key": "HI-331", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Won't Do", "resolutionDate": "2016-02-02T21:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add deprecation for hiera 1x backends", "timeSpent": "PT0S", "updated": "2016-02-24T17:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Since we are taking another approach, this does not have to be done.", "created": "2016-02-02T21:30:00.000000"}], "components": [], "created": "2015-01-28T12:34:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@549057e7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy3on:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10540_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_32000133869"}], "description": "In Hiera version 2.0.0 the backend API was changed to require that a recursion guard was passed in the calls processing lookups. \n\nAt the same time, the implementation gracefully handles version 1.0.0 API backends by silently calling them without the guard.\n\nIn the first implementation of HI-328 a warning is displayed if a version 1x backend is used when running with debug turned on.\n\nIn Hiera 4.0 the support to call old backends should be removed. (Originally Hiera 3.0.0, but it is now a much smaller release).", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53799", "fixedVersions": [], "id": "53799", "issueType": "Improvement", "key": "HI-330", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Won't Do", "resolutionDate": "2016-02-02T21:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "remove support for 1x backends", "timeSpent": "PT0S", "updated": "2018-09-10T12:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "That is part of the YAML specification and not something we can do anything about. A bare word on is a Boolean in Yaml.\n\nSorry, but that is just one of the many ways yaml will bite its users.\nIt is not specific to hiera in any way.\n\nClosing as won't fix.", "created": "2015-01-28T12:14:00.000000"}], "components": [], "created": "2015-01-28T11:06:00.000000", "creator": "557058:f09edb20-ad8d-4924-8bfc-acf61dc49de3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1f7c25d4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy3mf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4085458_*|*_6_*:*_1_*:*_0"}], "description": "Heira interpolates 'on' to 'true' in unquoted values in yaml data files.\n\nGenerally unquoted strings are accepted as valid yaml and no interpolation is expected.\n\ne.g.:\n\n# cat /var/lib/hiera/global.yaml\n---\ntest: on\n# hiera test\ntrue\n#\n\nExpected result is 'on'\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53725", "fixedVersions": [], "id": "53725", "issueType": "Bug", "key": "HI-329", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:f09edb20-ad8d-4924-8bfc-acf61dc49de3", "resolution": "Won't Fix", "resolutionDate": "2015-01-28T12:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera resolves baretext 'on' as 'true'", "timeSpent": "PT0S", "updated": "2015-01-28T12:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "pre-docs should be updated with a note about the API change in Backend.", "created": "2015-01-27T04:59:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Added [PR-35|https://github.com/puppetlabs/pre-docs/pull/35] - pre-docs describing the API change.", "created": "2015-01-28T04:52:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to master at c717793", "created": "2015-01-28T17:58:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "partly verified on rhel7 at SHA: 98e6271 with:\n{code}\n[root@kw0cth1pip79mpo agent]# cat /etc/puppetlabs/agent/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - defaults\n  - \"%{clientcert}\"\n  - \"%{environment}\"\n  - global\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/agent/code/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\hiera\\var on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir: /etc/puppetlabs/agent/code/hieradata\n[root@kw0cth1pip79mpo agent]# cat /etc/puppetlabs/agent/code/hieradata/global.yaml\nfoo: '%{hiera(\"bar\")}'\nbar: '%{hiera(\"foo\")}'\nerict: 'wuz here'\n\n[root@kw0cth1pip79mpo etc]# hiera foo\n/usr/local/share/ruby/site_ruby/hiera/recursive_guard.rb:13:in `check': Detected in [hiera(\"bar\"), hiera(\"foo\")] (Hiera::InterpolationLoop)\n\tfrom /usr/local/share/ruby/site_ruby/hiera/interpolate.rb:47:in `do_interpolation'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/interpolate.rb:20:in `block in interpolate'\n\n[root@kw0cth1pip79mpo agent]# puppet apply -e \"notice(hiera('foo'))\"\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [hiera(\"bar\"), hiera(\"foo\")] at line 1:8 on node kw0cth1pip79mpo.delivery.puppetlabs.net\n{code}\n\nverified on ubuntu14.04 with:\n{code}\nroot@a6ptenb56ccdvcv:~# puppet apply -e \"notice(hiera('foo'))\"\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [hiera(\"bar\"), hiera(\"foo\")] at line 1:8 on node a6ptenb56ccdvcv.delivery.puppetlabs.net\n{code}\n\nverified on windows2012r2-r64 with:\n{code}\nAdministrator@mof7mhlhrooet33 /cygdrive/c/ProgramData/PuppetLabs/puppet/etc\n$ cmd /c puppet apply -e \"notice(hiera('foo'))\"\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [hiera(\"bar\"), hiera(\"foo\")] at line 1:8 on node mof7mhlhrooet33.delivery.puppetlabs.net\nError: Evaluation Error: Error while evaluating a Function Call, Detected in [hiera(\"bar\"), hiera(\"foo\")] at line 1:8 on node mof7mhlhrooet33.delivery.puppetlabs.net\n\nAdministrator@mof7mhlhrooet33 /cygdrive/c/ProgramData/PuppetLabs/puppet/etc\n$ cat hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - defaults\n  - \"%{clientcert}\"\n  - \"%{environment}\"\n  - global\n\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/agent/code/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\hiera\\var on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir: C:\\ProgramData\\PuppetLabs\\hiera\\var\n\nAdministrator@mof7mhlhrooet33 /cygdrive/c/ProgramData/PuppetLabs/puppet/etc\n$ cat ../../hiera/var/global.yaml\nfoo: '%{hiera(\"bar\")}'\nbar: '%{hiera(\"foo\")}'\nerict: 'wuz here'\n\n{code}", "created": "2015-02-02T17:57:00.000000"}], "components": [], "created": "2015-01-26T04:31:00.000000", "creator": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5067ce3c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy15j:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_152152338_*|*_1_*:*_1_*:*_9086612_*|*_10007_*:*_1_*:*_33571612_*|*_3_*:*_1_*:*_178562015_*|*_5_*:*_1_*:*_4403152465_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_282600632"}], "description": "Hiera data that contains this:\n{noformat}\nfoo: '%{hiera(\"bar\")}'\n\nbar: '%{hiera(\"foo\")}'\n{noformat}\nwill result in:\n{noformat}\n     SystemStackError:\n       stack level too deep\n{noformat}\nThe RecursiveGuard instance that is created is useless since it's not passed on to the hiera lookup method. Hence, a new such instance is created for the next lookup that results in interpolation.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53911", "fixedVersions": ["HI 2.0.0"], "id": "53911", "issueType": "Bug", "key": "HI-328", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "resolution": "Fixed", "resolutionDate": "2015-02-02T18:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera does not detect interpolation recursion", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "[~accountid:557058:104b5720-714d-4539-b455-df472251ec89] and [~accountid:62450221ad6b7e006aa4e34c] I have submitted a PR to change the target of the hiera acceptance tests to use agents rather than master.", "created": "2015-01-21T18:49:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced] Should this issue be closed? The PR was merged into master on Jan 23.", "created": "2015-01-29T04:17:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] I have closed this issue. We have seen these tests pass in CI since the merge. Thank you.\n\nhttps://jenkins.puppetlabs.com/view/Hiera/view/Master/job/Hiera-Acceptance-master/174/", "created": "2015-01-29T08:46:00.000000"}], "components": [], "created": "2015-01-21T18:22:00.000000", "creator": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d535ac1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzpb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_656580408_*|*_6_*:*_1_*:*_0"}], "description": "The current acceptance tests are configured to run only on the master role. Hiera does not explicitly require a master, so this classification should be generalized to the agent role.\n\nThis change will be required in order for the tests to run test configurations using the All In One agent packaging.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53617", "fixedVersions": ["HI 2.0.0"], "id": "53617", "issueType": "Task", "key": "HI-327", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "resolution": "Fixed", "resolutionDate": "2015-01-29T08:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Change acceptance tests to run on agent rather than master", "timeSpent": "PT0S", "updated": "2015-01-29T08:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Skipping. Tickets will be closed as part of 2.0.0 final", "created": "2015-03-12T13:18:00.000000"}], "components": [], "created": "2015-01-21T13:54:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@fb7f420"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzdb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4314284776_*|*_5_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.4.0%22%20AND%20status%20%3D%20Resolved\n\nThere is a bulk edit at the top (a gear with the word \"Tools\"). Should you decide to take this route:\n  * Select Bulk Change - All # issues\n  * Step 1 - choose all relevant issues (likely all of them)\n  * Step 2 - Select \"Transition Issues\"\n  * Step 3 - Select \"Closed\"\n  * Step 4 - Select \"Fixed\" in Change Resolution.\n  * View what is about to change and confirm it. Then commit the change.\n\nDependencies:\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53965", "fixedVersions": [], "id": "53965", "issueType": "Sub-task", "key": "HI-326", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-03-12T13:18:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-03-12T13:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Per discussion in AIO standup today, resolving.", "created": "2015-03-12T13:17:00.000000"}], "components": [], "created": "2015-01-21T13:54:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@487af3ca"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzd3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4314207361_*|*_5_*:*_1_*:*_0"}], "description": "  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]: update the release google spreadsheet.\n  * Update the MSI build targets in the Puppet repo in ext/build_defaults.yaml. This needs to be done for any projects that are to get into the MSI (facter and hiera as of 8/2014)\n  * Send the drafted release notes email.\n    * If final send to puppet-announce and specific distribution lists (e.g. puppet to puppet-users & puppet-dev).\n    * If this release has security implications, also send the release announcement to puppet-security-announce\n  * Make a PSA on IRC letting those kiddos know about the new release.\n    * Something along the lines of \"PSA: facter 1.7.3 now available\"\n\nDependencies:\n  * Prepare long form release notes and short form release story\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53793", "fixedVersions": [], "id": "53793", "issueType": "Sub-task", "key": "HI-325", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-03-12T13:17:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I don't believe we are pushing docs as this release is a tag only", "created": "2015-03-11T16:59:00.000000"}], "components": [], "created": "2015-01-21T13:54:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7a4efe23"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzcv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4241097039_*|*_6_*:*_1_*:*_0"}], "description": "Push the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53798", "fixedVersions": [], "id": "53798", "issueType": "Sub-task", "key": "HI-324", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-03-11T16:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-03-11T16:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "There are no packages for this release", "created": "2015-03-11T16:38:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3f449916"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzcn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4239886943_*|*_6_*:*_1_*:*_0"}], "description": "Push packages\n  * run `rake pl:jenkins:uber_ship`\n    * You will need the keys to the castle (aka the passphrase) for this to work.\n    * Don't forget to make sure everything looks like it's in the correct folder, the pkgs dir has been cleared out, and that you are shipping for all expected platforms.\n    * Get a *second set of RelEng eyes* on the packages that are about to be shipped to make sure everything looks a-okay.\n    * If you're shipping a gem you need to make sure you have a rubygems account, are an owner of that project, and have a gem config file.\n    * If you're shipping puppet you need to sign the MSI file for Windows. This is a manual process and the ship task doesn't ship or build the msi so talk to Moses or Haus for more details. This file also needs to be manually signed.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53747", "fixedVersions": [], "id": "53747", "issueType": "Sub-task", "key": "HI-323", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-03-11T16:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-03-11T16:38:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@32e236c1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzcf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4239875335_*|*_5_*:*_1_*:*_0"}], "description": "The development team is responsible for updating the stable/master branches as necessary.\nThis will be done after the version bump in version.rb.\n\nDependencies:\n  * Go / No Go meeting (except where it's required to push the tag to build packages - MSIs)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53723", "fixedVersions": [], "id": "53723", "issueType": "Sub-task", "key": "HI-322", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-11T16:38:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-03-11T16:38:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "go from [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920], [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd], [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e], [~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced], [~accountid:63d40628f6e1b543161789a7]", "created": "2015-03-11T16:37:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@32f17e8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzc7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4239852777_*|*_5_*:*_1_*:*_0"}], "description": "This should happen Monday-Thursday, before 4pm. We should not be shipping anything after 4:00 PM or on a Friday both for our users, and because shipping takes time.\n\nGet a yes/no for the release from dev, docs, product, qa, releng.\n\nThis meeting is informal, over chat, and usually happens right before packages are pushed.\nKeep in mind we typically do not ship releases in the evening and we don't ship on Friday if the release is a final release.\n\nDependencies:\n  * Smoke testing\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53615", "fixedVersions": [], "id": "53615", "issueType": "Sub-task", "key": "HI-321", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-11T16:38:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-03-11T16:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "We are not building packages for this release", "created": "2015-03-11T16:35:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@dedf68b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzbz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4239721491_*|*_6_*:*_1_*:*_0"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.\n\nIn general this should happen on a variety of platforms, i.e. one or two each of kind of package we create (i.e., gem, dmg, msi, deb, rpm, etc).\n\nFor Puppet, our acceptance suite now tests service scripts, and on debian, a passenger master.  Manual smoke testing can therefore be limited to other package formats than deb and rpm.\n\nLighter testing of Z releases is acceptable.\n\n  * Add a link to the Packages repository that you receive from the \"Tag and create packages\" subtask\n  * Ping folks on your team for help with different platforms.\n  * When you pick up a platform, please leave a comment below that you are testing it. When it looks good, leave another comment, preferably with a code snippet showing the commands executed and their output.\n  * When all platforms picked have been smoke tested, move this ticket to done.\n\nIMPORTANT: Please edit the description of this ticket and remove \"Example:\" below. Edit the platforms to smoke test on, and the smoke test procedure.\n\nExample:\nSmoke test platforms:\n  * pick some platforms such as\n  * Windows 2003/2008/2012 (msi)\n  * Solaris 10/11 (tarball or gem?)\n  * OSX (dmg)\n  * (Note if you are smoke testing Puppet and pick an rpm or deb based platform, concentrate on testing a gem or tarball, since acceptance should have adequately smoke tested those packages.)\n    * RHEL/CentOS 5/6/7\n    * Fedora 19/20\n    * Debian 6/7\n    * Ubuntu 10.04/12.04/14.04\n\nSmoke test procedure:\n  * Start/stop/restart a master (if the platform supports that)\n  * Start/stop/restart an agent\n  * Help/man\n  * Write and run some manifests\n\nDependencies:\n  * Tag and create packages\n  * For Windows MSIs - Push tag\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53541", "fixedVersions": [], "id": "53541", "issueType": "Sub-task", "key": "HI-320", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-03-11T16:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-03-11T16:35:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "tag staged locally\n{code}\n[0] Melissa@melissa:hiera:(master)$ git show 2.0.0-rc1\ntag 2.0.0-rc1\nTagger: Melissa Stone <melissa@puppetlabs.com>\nDate:   Wed Mar 11 15:04:53 2015 -0700\n\n2.0.0-rc1\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1\nComment: GPGTools - http://gpgtools.org\n\niQIcBAABCgAGBQJVALwFAAoJEBBUt6JL1uww4OoP/0gZaApDXJ2LebFQdp2n4NGR\n8xOQi0OYCam5STlQm3QoCdGbM1oVcrpE4IOB8QCYk3MovOdyzX6VFAoL9NjER3zg\nyT48tEDS4UtD8FB2YBgtJpd/M+4FmP5fa/SwDQFa6VLOw0DCH8w9D1d8M5whk4wD\n4xP8gPOou5b2IcchHXZMkWcfebWqAvmB5OxgJU7VRLxWX1iZrTS4EdBOywNbtt/J\nH9G/g4SwYQrrCG7PqlLiSosqEZXkaTgYoKSuI6g0hTkPQGqaQSLlX8p43aoThkSy\ni8crJz1qA67oT/pCysnim6CHjFqVcfAaugxkWOhSEHhWZnnU6wZKVJlVjSJdVrIm\nUgzETC9mUOg63DRQpb5MdYX9vE7QOBHpAd1jOtFluvicCrw+G55TgeSv6rAPiHeq\nSakeMcI6X0M8D55yL8WPeaLQJk1YXI+ISLblJ/tNHN/cJDoDUvFAJLdJRO2QZ3SY\npXZaw4ZmtpGAoyN9SnfRvXDg+LIvZMJodPC8SlmHUCpOc+mYDYVV1bix32auusRj\naLCouSC9p80xJIuxJQt2urrmFaSlQStdCokkEEN7+s2X+aGjzmKVCrJbGtl0UXoD\n0FpJ9zGYmF9nUNypwpoA+tU+dGxe+kDlIX4/QLLD5igIeXeqizZwBVfj2qnm8gw2\nf0ZvLb9n5LdJOnMPmAZb\n=Q+EP\n-----END PGP SIGNATURE-----\n\ncommit b19b9077ba29bbd7b773723adb6967c94fd83241\nAuthor: Henrik Lindberg <henrik.lindberg@cloudsmith.com>\nDate:   Tue Mar 10 21:07:08 2015 +0100\n\n    (HI-315) Update VERSION = \"2.0.0-rc1\"\n\ndiff --git a/lib/hiera/version.rb b/lib/hiera/version.rb\nindex ee19c0a..c87ddfa 100644\n--- a/lib/hiera/version.rb\n+++ b/lib/hiera/version.rb\n@@ -7,7 +7,7 @@\n\n\n class Hiera\n-  VERSION = \"1.3.4\"\n+  VERSION = \"2.0.0-rc1\"\n\n   ##\n   # version is a public API method intended to always provide a fast and\n{code}", "created": "2015-03-11T16:13:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "For the record, QA signs off on SHA b19b9077b for tagging as hiera 2.0.0-rc1", "created": "2015-03-11T16:31:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1217e496"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzbr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4238364749_*|*_5_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] - Please add the SHA as a comment (this should be the commit which contains the newly updated version.rb)\n  * checkout the sha\n    * Make sure you are about to tag the correct thing\n  * Create the tag e.g.) git tag -s -u {GPG key} -m \"1.7.3\" 1.7.3\n    * You need to know the pass phrase for this to complete successfully. It's important that we make sure all releases are signed to verify authenticity.\n    * DO NOT push the tag to the repo, keep it local only\n  * `git describe` will show you the tag. Make sure you're building what you think you're building.\n  * Make sure you look over the code that has changed since the previous release so we know what's going out the door.\n  * run `rake package:implode package:bootstrap pl:jenkins:uber_build` when you've verified what version you're building (this uses the latest version of the packaging repo to build the packages).\n  * If this is a puppet release, you have to build the windows msi. This is done using jenkins jobs on jenkins-legacy. You have to make sure you're targeting the correct versions of hiera, facter and puppet.\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] please add a comment with location of packages.\n\nFor puppet, don't forget the msi packages. This usually comes after other smoke testing is going well since it does require the tag to be pushed live.\n\nDependencies:\n  * Every ticket before this except for release notes.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54063", "fixedVersions": [], "id": "54063", "issueType": "Sub-task", "key": "HI-319", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-11T16:13:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release", "timeSpent": "PT0S", "updated": "2015-03-11T16:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "I think we aren't doing this for the rc? If not, please just resolve this ticket.\n\n/cc [~accountid:623c08e1562ab90069f8aed4], [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0]", "created": "2015-03-11T17:24:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Per discussion in AIO standup today, resolving.", "created": "2015-03-12T13:17:00.000000"}, {"author": "557058:1b9bde12-f0a1-4355-ab73-7fc4ec69ba79", "body": "Short release story:\n\nHiera 2.0.0 is a new major version that includes several new features that expand Hiera's abilities. New features include the ability to pass options to the deep merge gem, new sub-keys to allow lookups to index into data structures, and an `alias()` function to make a key an alias for another key. It also includes a fix for interpolation recursion loops and several other bugs. This release adds support for Ubuntu 14.04 (Trusty) and drops support for Ubuntu 13.10 (Saucy) and Debian Unstable (Sid).", "created": "2015-03-25T18:27:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@53a640c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzbj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4314210479_*|*_5_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Is there a JIRA ticket targeted at the release for every commit?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54031", "fixedVersions": [], "id": "54031", "issueType": "Sub-task", "key": "HI-318", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-03-12T13:17:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-03-26T09:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Skipping, since this is an RC.\n\n/cc [~accountid:557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c]", "created": "2015-03-12T13:16:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@44a6905a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzbb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4314175063_*|*_5_*:*_1_*:*_0"}], "description": "This happens on Jira - we need to clean up the current release and prepare for the next release.\n  * Mark the version that's going out as \"Released\" in the Project Admin -> Versions panel.\n  * Create a version we can target future issues or issues that didn't make it into the current release.  (e.g. if we're releasing Facter 1.7.4, make sure there's a 1.7.5 version (or at least 1.7.x if there's isn't another bug release planned for the near future)\n  * Create a public pair of queries for inclusion in the release notes/announcement. These allow easy tracking as new bugs come in for a particular version and allow everyone to see the list of changes slated for the next release (Paste their URLs into the \"Release story\" ticket):\n    - 'project = XX AND affectedVersion = 'X.Y.Y', Save as \"Introduced in X.Y.Y\", click Details, add permission for Everyone\n    - 'project = XX AND fixVersion = 'X.Y.Z', Save as \"Fixes for X.Y.Z\", click Details, add permission for Everyone\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53910", "fixedVersions": [], "id": "53910", "issueType": "Sub-task", "key": "HI-317", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-12T13:16:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-03-12T13:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Since this in an rc release, we do not need to do this task", "created": "2015-03-11T16:36:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6420ec87"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzb3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4239765085_*|*_6_*:*_1_*:*_0"}], "description": "For some releases, the code base will need to be merged down to stable.\n\n*NOTE:* This is usually only during a x.y.0 release, but even then it may have already been done. If it doesn't apply, close this ticket.\n\n\nAssuming you have origin (your remote) and upstream (puppetlabs remote), the commands will look something like this:\n{noformat}\ngit fetch upstream\ngit rebase upstream/master\n\ngit checkout stable\ngit rebase upstream/stable\n\ngit merge master --no-ff --log\n{noformat}\n\nOnce that looks good:\n{noformat}\ngit push origin\ngit push upstream\n{noformat}\n\nAfter merging to stable, the jobs on jenkins may require updates (spec, acceptance, etc) when you merge master into stable. Please ensure that the jenkins jobs are updated if necessary.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53964", "fixedVersions": [], "id": "53964", "issueType": "Sub-task", "key": "HI-316", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Won't Fix", "resolutionDate": "2015-03-11T16:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-03-11T16:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Version updated to 2.0.0-rc1 on master at: 84e52af4519e5c60c86c707bf6ab5303b6976d76", "created": "2015-03-10T14:09:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I believe [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] meant b19b9077ba29bbd7b773723adb6967c94fd83241 ?", "created": "2015-03-11T16:15:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "yeah, derp - the first was puppet head of master SHA, not Hiera head of master SHA. Sorry :-o\n", "created": "2015-03-11T18:34:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6f6ccca7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzav:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1387293736_*|*_3_*:*_1_*:*_2850929208_*|*_5_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/HI/version.rb or project.clj to correct version.\n\n  * Commit the updated version file.\n    * e.g) commit -m \"(packaging) Update FACTERVERSION to 1.7.3\".\n  * If any merging needs to happen (i.e. master into stable/stable into master), it can now happen (different subtask).\n  * Once this is done, hand the SHA to be built to RelEng to be tagged.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53791", "fixedVersions": [], "id": "53791", "issueType": "Sub-task", "key": "HI-315", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-11T16:10:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-03-11T18:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "All 2.0.0 issues have a corresponding commit on master.\n", "created": "2015-01-22T07:34:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@787bdee5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzan:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_63678126_*|*_3_*:*_1_*:*_591863045_*|*_5_*:*_1_*:*_0"}], "description": "Ensure all tickets targeted at the release have a corresponding commit\n  * git log <old tag>..<new tag>\n  * This time, look through tickets targeted at this release in JIRA, and compare it to the commit log, looking for the corresponding numbers\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release) There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53797", "fixedVersions": [], "id": "53797", "issueType": "Sub-task", "key": "HI-314", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-01-29T03:59:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-01-29T03:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "All commits have a corresponding ticket targeted for 2.0.0", "created": "2015-01-22T08:15:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@8963109"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxzaf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_657824517_*|*_3_*:*_1_*:*_45899_*|*_5_*:*_1_*:*_0"}], "description": "Ensure all tickets referenced in the commit log have a bug targeted at the release\n\n  * git log <old tag>..<new tag>\n  * look through, and make sure that if there is a JIRA ticket number referenced in any of the commits, that ticket is targeted at the release\n  * Also, make sure the code itself is sane, that you understand why the change was made, etc. etc.\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release). There is also the [release-inquisition|https://github.com/adrienthebo/release-inquisition], which also helps a lot with this task.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53746", "fixedVersions": [], "id": "53746", "issueType": "Sub-task", "key": "HI-313", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-01-29T04:37:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-01-29T04:37:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is currently blocked on HI-298", "created": "2015-01-21T15:24:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "The release process is blocked by a whole slew of issues but i added them to the umbrella project HI-311.", "created": "2015-01-29T04:39:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@59dc8ec4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxza7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1387192363_*|*_5_*:*_1_*:*_0"}], "description": "If there are any version dependencies expressed in the code base, make sure these are up to date. For Puppet, make sure the shas used to build the MSI are correct. For Puppet-Server, make sure all references to the puppet version are correct.\n\nAll tests (spec, acceptance) should be passing on all platforms for both stable & master.\n\n  * If a new platform has been added, make sure that platform has acceptance testing, new features have decent coverage, etc. etc.\n  * If the release is going to be cut from a sha, rather than the head of a branch, make sure that sha specifically has gone through spec/acceptance/etc. tests\n  * Move all items that should be moved from Ready for CI to Ready for Review\n\nHave all tickets been resolved (passed Functional Review)? If not please add any missing tickets to the current sprint's board.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.4.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53720", "fixedVersions": [], "id": "53720", "issueType": "Sub-task", "key": "HI-312", "labels": [], "originalEstimate": "PT0S", "parent": "53613", "parentSummary": "hiera 2.0.0-rc1 2015-01-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-02-06T15:13:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-02-06T15:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The Hiera 2.0.0 release is also blocked on a possible decision to alter the AIO paths based on review/use of AIO packaging when testing them.\nPing [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0]", "created": "2015-01-29T06:50:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd], [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d], I noticed there are a lot of unresolved tickets for hiera 2.0.0. What is the status of this release? Are we expecting it to be delayed?", "created": "2015-01-29T11:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] we are finding tickets that have been merged and passed CI in the past but that have never been reviewed (as per our current process). Product owner ([~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] needs to be able to say go/no-go on those - or give a card blance \"ok\" to them all I guess. \n\nWe are definitively blocked by a final go-back-and-change-AIO-paths pending decision for AIO as per a discussion yesterday. This means we will release Hiera 2.0.0 just before Puppet 4.0.0, and Puppet 4.0.0 is currently blocked on AIO being ready for release.", "created": "2015-01-29T11:56:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Okay, thanks [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]! Let me know when you're close to being ready for the release. I'll also keep an eye on the remaining tickets.", "created": "2015-01-29T13:04:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Just so everyone knows, I'll be on PTO Feb 13-17th, and unable to do any releases during that time.", "created": "2015-02-09T10:12:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We now have a new decision on PUP-3809, and HI-298 was reopened, and path change has been merged. It is now going through CI. Once HI-298 has passed through the pipeline we should be ready to release.", "created": "2015-02-12T04:47:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "QA Risk assessment = N/A", "created": "2015-03-09T09:41:00.000000"}], "components": [], "created": "2015-01-21T13:53:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3bbc075a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyp3i7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_660219534_*|*_3_*:*_3_*:*_568300615_*|*_5_*:*_2_*:*_41006_*|*_10004_*:*_3_*:*_3085792810"}], "description": "hiera 2.0.0 2015-01-28 Release\n\nWhen working through this ticket, add it to the board and then keep it in the Ready for Engineering column.\nMove the subtasks to In Progress when you are working on them and Resolved when you have completed them.\nIn general subtasks should only be moved to Ready for Engineering when they are ready to be worked on. For some assignees this is their cue to start working on release-related items.\n\n * The first set of tickets are assigned to the developer, those can all be converted to Ready for Engineering and you can start working through them.\n * Only when those are done should you move the \"Prepare notes\" and \"Tag release/create packages\" tasks to Ready for Engineering. Ping those assigned to move forward.\n * When you hear back for \"Tag Release/create packages\", you should move \"Smoke test packages\" to Ready for Engineering or In Progress if you are ready.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53613", "fixedVersions": [], "id": "53613", "issueType": "Task", "key": "HI-311", "labels": ["AIO"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2015-03-12T13:19:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera 2.0.0-rc1 2015-01-28 Release", "timeSpent": "PT0S", "updated": "2015-03-18T12:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "62450221ad6b7e006aa4e34c", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "I think we just haven't done the AIO changes for hiera. Basically this is a dup of HI-298.", "created": "2015-01-20T18:32:00.000000"}], "components": [], "created": "2015-01-20T18:15:00.000000", "creator": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a7f82a5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxy9b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_75992993_*|*_6_*:*_1_*:*_0"}], "description": "Running hiera on an AIO agent results in an error about missing hiera.yaml file.\n\n{code}\nroot@ubuntu1404-64:~# hiera foo\nFailed to start Hiera: RuntimeError: Config file /etc/puppetlabs/puppet/hiera.yaml not found\n{code}\n\nFile is installed in the following path on the agent and successfully starts when given that file as a config.\n{code}\nroot@ubuntu1404-64:~# ls /etc/puppetlabs/agent/hiera.yaml \n/etc/puppetlabs/agent/hiera.yaml\nroot@ubuntu1404-64:~# hiera --config /etc/puppetlabs/agent/hiera.yaml  foo\nnil\n{code}\n\ncc [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920], [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e], [~accountid:557058:104b5720-714d-4539-b455-df472251ec89]", "environment": "AIO prebuild (puppet-agent_0.1.3.3.g84b68c3-1_amd64.deb) installed on Ubuntu-1404-amd64", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53540", "fixedVersions": [], "id": "53540", "issueType": "Bug", "key": "HI-310", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "resolution": "Duplicate", "resolutionDate": "2015-01-21T15:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "AIO hiera looking for hiera.yaml in wrong path", "timeSpent": "PT0S", "updated": "2015-01-21T15:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:b92800b1-61b3-457c-b493-5c20cee940be", "body": "I've copied this one over from Redmine, as merging across backends' is an issue I've just come up against when using [~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd]'s module_data backend...\n\nA bit more discussion was had here: https://github.com/ripienaar/puppet-module-data/issues/21#issuecomment-69904870", "created": "2015-01-14T04:57:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "With Hiera 5 this is no longer an issue - all merges are handled by the framework instead of inside of the backeds (they are now functions). We will not fix this for old hiera 3 backends, so closing this as a Won't Do.", "created": "2017-08-21T09:56:00.000000"}], "components": [], "created": "2015-01-14T04:54:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1e701e06"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxulj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_82094521342_*|*_6_*:*_1_*:*_0"}], "description": "(copied from github - originally raised by hunner)\n\nThe behavior of merging/replacing hashes, pushing/replacing arrays, or replacing strings is built into Hiera. The logic for doing this is currently built into each particular backend, thus different backends could give different answers for the same data.\n\nBackends written previous to the completion of this ticket would probably cease to function as expected.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53789", "fixedVersions": [], "id": "53789", "issueType": "New Feature", "key": "HI-308", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Won't Do", "resolutionDate": "2017-08-21T09:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Type resolution should be outside of the backend", "timeSpent": "PT0S", "updated": "2017-08-21T09:56:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a43f0a2f6400069eaa7f4", "body": "https://github.com/puppetlabs/hiera/pull/225 is my PR for this issue.", "created": "2015-01-09T15:41:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Already merged this, but [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] can you take a quick look at it?", "created": "2015-01-14T15:47:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e] looks ok to me", "created": "2015-01-14T15:57:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] the commit is on master so I assume it passed review and should move on to CI?", "created": "2015-01-29T04:57:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The flow is \"ready for merge\" -> \"ready for CI\" -> \"ready for test\" (i.e. QA's signoff) [-> \"ready for review\"] (Product's sign off) -> \"resolved\" - <RELEASE> -> closed.\n\nIn this case, the work has already passed CI, and it was in Review (sign of by product). Not sure how much review is needed. Will take another look.", "created": "2015-01-29T06:56:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Right. I got temporarily confused by the terminology ", "created": "2015-01-29T07:13:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] yeah I don't know why this ended up on the client board. Regardless, yes, makes more sense for it to be language team to me also.\n\nBtw, for the Ready for Review state, we discussed with Eric that we could simply use our own best judgement on when he really needs to sign off (which is usually for pretty high impact tickets). So it may be that you can just go ahead and resolve it.", "created": "2015-01-29T19:16:00.000000"}], "components": ["Community"], "created": "2015-01-09T14:35:00.000000", "creator": "623a43f0a2f6400069eaa7f4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2000b4e1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxs4v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_75030364_*|*_1_*:*_1_*:*_435277801_*|*_10007_*:*_1_*:*_646860_*|*_10009_*:*_1_*:*_1910451317_*|*_5_*:*_1_*:*_4070262308_*|*_6_*:*_1_*:*_0"}], "description": "The Hiera CLI uses ruby's optparse module to pull options out of ARGV.  So does Mcollective.  The problem is that the CLI parses some options, comes across a need for mcollective, then calls it immediately before the rest of ARGV is parsed.   That creates some weird results.\n\nCompare the following \n\n{code}\n# hiera -c /etc/hiera.yaml -m someserver lookupkey ::environment=production\nlookupresult\n# hiera -m someserver -c /etc/hiera.yaml lookupkey ::environment=production\nCould not create RPC client: The /etc/hiera.yaml config file does not specify a libdir setting, cannot continue\n{code}\n\nWhat happened there is that the -c option was actually parsed by mcollective instead of hiera.  Note that the order of options becomes important, despite the documentation declaring otherwise.\n\nI've got a branch in github that we're using to get around this issue.   It's at https://github.com/peculater/hiera .  I'll make a pull request as soon as I get the issue number from this submission.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53539", "fixedVersions": ["HI 2.0.0"], "id": "53539", "issueType": "Bug", "key": "HI-306", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a43f0a2f6400069eaa7f4", "resolution": "Fixed", "resolutionDate": "2015-02-06T15:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera CLI optparse problems with -m", "timeSpent": "PT0S", "updated": "2016-03-16T17:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "body": "Patch submitted and ready for review at https://github.com/puppetlabs/hiera/pull/221.", "created": "2014-12-16T10:59:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Failed acceptance tests in Puppet (https://jenkins.puppetlabs.com/view/Puppet/view/Master/job/platform_puppet_specs_linux-master/356/). I'll investigate what else needs to change and how to stage the changes.", "created": "2014-12-19T15:00:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Puppet (specifically https://github.com/puppetlabs/puppet/blob/master/lib/hiera/backend/puppet_backend.rb) contains calls to parse_string and parse_answer. They look like they also need to be addressed to use the override.\n\nHowever, to avoid syncing issues I'd propose changing the proposed fix to Hiera to make override the last argument with a default to nil, so no changes are required to use the new API. Then a ticket and PR for Puppet to use the new API can be started.", "created": "2014-12-19T15:14:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Also, that's the difference between a minor and major version bump.", "created": "2014-12-19T15:35:00.000000"}, {"author": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "body": "Is that a change you would like me to make or will you?", "created": "2014-12-19T16:13:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "It's a simple change, so I can look at making it.", "created": "2014-12-19T16:22:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Merged to master at [98e6271|https://github.com/puppetlabs/hiera/commit/98e6271166577812c12ba870c536ce61d72cfeec]", "created": "2015-01-30T00:04:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "This ticket needs a description of both the desired/expected behavior and the buggy behavior the PR is meant to fix. [~accountid:557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d] or [~accountid:557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e] or [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d], could one of you please edit the description to add that? ", "created": "2015-02-05T12:15:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Here's an example showing the buggy behavior:\n\n1. Create a hiera.yaml config that specifies \n{code:yaml|title=hiera.yaml}\n---\n:backends:\n  - yaml\n:hierarchy:\n  - common\n  - alternate\n:yaml:\n  :datadir: \"/tmp/hieradata\"\n{code}\n2. Create data sources at {{/tmp/hieradata}}\n{code:yaml|title=/tmp/hieradata/common.yaml}\nfoo: '%{hiera(\"bar\")}'\nbar: 'common'\n{code}\n{code:yaml|title=/tmp/hieradata/alternate.yaml}\nbar: 'alternate'\n{code}\n3. Run {{hiera -c hiera.yaml foo}} and you'll see {{common}} printed. This is the expected behavior.\n\nNow to see the bug, swap {{common}} and {{alternate}} in {{hiera.yaml}}, so they're interpreted in a different order. We're going to use the order_override option to Hiera#lookup to restore the original order, but the output will differ from what we just saw in step 3 above.\n{code:ruby|title=irb}\nrequire 'hiera'\nhiera = Hiera.new(:config => 'hiera.yaml')\nhiera.lookup('foo', nil, {}, 'common')\n{code}\nThe result before this change shows {{alternate}}. The expected result is {{common}}, as above, and with the PR merged that's the behavior we get.", "created": "2015-02-05T13:39:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "The documentation referred to in the ticket is at https://docs.puppetlabs.com/hiera/1/puppet.html#hiera-lookup-functions.", "created": "2015-02-05T13:47:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "merged additional spec test (PR-241) at [d7cdd33|https://github.com/puppetlabs/hiera/commit/97e503df36df78f1d5d080d390fae756a8b330e8]", "created": "2015-02-06T10:19:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "very well covered by spec test.\nverified on rhel7 at SHA: 97e503d\n{code}\n[root@opb7roffx9arhkx ~]# vi /tmp/hieradata/alternate.yaml\n[root@opb7roffx9arhkx ~]# hiera foo\ncommon\n[root@opb7roffx9arhkx ~]# vi /etc/puppetlabs/agent/code/hiera.yaml\n[root@opb7roffx9arhkx ~]# hiera foo\nalternate\n[root@opb7roffx9arhkx ~]# irb\nirb(main):001:0> require 'hiera'\n=> true\nirb(main):002:0> hiera = Hiera.new(:config => '/etc/puppetlabs/agent/code/hiera.yaml')\n=> #<Hiera:0x00000001d6cf08 @config={:backends=>[\"yaml\"], :hierarchy=>[\"alternate\", \"common\"], :merge_behavior=>:native, :yaml=>{:datadir=>\"/tmp/hieradata\"}, :logger=>\"console\"}>\nirb(main):003:0> hiera.lookup('foo', nil, {}, 'common')\nDEBUG: 2015-02-06 13:00:33 -0800: Hiera YAML backend starting\nDEBUG: 2015-02-06 13:00:33 -0800: Looking up foo in YAML backend\nDEBUG: 2015-02-06 13:00:33 -0800: Looking for data source common\nDEBUG: 2015-02-06 13:00:33 -0800: Found foo in common\nDEBUG: 2015-02-06 13:00:33 -0800: Looking up bar in YAML backend\nDEBUG: 2015-02-06 13:00:33 -0800: Looking for data source common\nDEBUG: 2015-02-06 13:00:33 -0800: Found bar in common\n=> \"common\"\nirb(main):004:0> quit\n{code}", "created": "2015-02-06T14:02:00.000000"}], "components": ["Community"], "created": "2014-12-16T09:24:00.000000", "creator": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@277f909c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxjpb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Client Platform"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_3_*:*_589852349_*|*_null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_204578152_*|*_10007_*:*_2_*:*_131728682_*|*_5_*:*_1_*:*_4074459535_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_8302151"}], "description": "If you look up a piece of data that happens to use the hiera() function in an interpolation token\u2014 like: \n\n{code}\nvalue: '${hiera(\"other_lookup_key\")}'\n{code}\n\n\u2014and you provided a hierarchy override as an argument to the original lookup, Hiera will ignore the override when resolving the secondary lookup.\n\nDocs about lookup functions in interpolation tokens: https://docs.puppetlabs.com/hiera/1/variables.html#the-hiera-lookup-function\n\nDocs about providing hierarchy overrides: https://docs.puppetlabs.com/hiera/1/puppet.html#hiera-lookup-functions\n{quote}\nOverride (optional): the name of an arbitrary hierarchy level to insert at the top of the hierarchy. This lets you use a temporary modified hierarchy for a single lookup. (E.g., instead of a hierarchy of $clientcert -> $osfamily -> common, a lookup would use specialvalues -> $clientcert -> $osfamily -> common; you would need to be sure to have specialvalues.yaml or whatever in your Hiera data.)\n{quote}\n\nThis does not work with interpolation.  When the variable is interpolated the original hierarchy is used.  We have fixed this and will be submitting a patch but I wanted to make sure a bug was filed first.  The bug goes back at least as far as Hiera 1.2.1.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53745", "fixedVersions": ["HI 2.0.0"], "id": "53745", "issueType": "Bug", "key": "HI-304", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:1a8e10a3-5490-4a84-8422-3079fe8cc06d", "resolution": "Fixed", "resolutionDate": "2015-02-06T14:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Override does not propagate to hiera() function in interpolation tokens", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920] fyi, we've updated the deep_merge gem dependency. I'm not entirely sure where this ticket needs to go next, I'm assuming ready for CI, but if that isn't correct, please feel free to correct it.", "created": "2014-12-15T16:29:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Failed CI, I'm pushing deep_merge to the internal mirror to fix it.", "created": "2014-12-16T15:38:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Passed CI: https://jenkins.puppetlabs.com/view/Hiera/view/Master/job/Hiera-Specs-master/103/", "created": "2014-12-16T16:08:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "passed acceptance.\nverified on osx with:\n{code}\n\u2713 erict ~/repos/hiera (master>)$ bi\nFetching gem metadata from https://rubygems.org/.........\nResolving dependencies...\nInstalling rake 10.1.1\nInstalling builder 3.2.2\nInstalling deep_merge 1.0.1\n{code}", "created": "2014-12-16T18:01:00.000000"}], "components": ["Community"], "created": "2014-12-08T10:35:00.000000", "creator": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c56f63f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxgfr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_85183455_*|*_1_*:*_1_*:*_625675208_*|*_10007_*:*_1_*:*_362547_*|*_10009_*:*_1_*:*_6740734_*|*_5_*:*_1_*:*_8552941516_*|*_6_*:*_1_*:*_0"}], "description": "The Gem dependency files should list and try to pickup deep_merge, since we use it.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53718", "fixedVersions": ["HI 2.0.0"], "id": "53718", "issueType": "Bug", "key": "HI-303", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "resolution": "Fixed", "resolutionDate": "2014-12-16T18:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add optional dependency deep_merge to Gemfile", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Please try this on latest Puppet with Hiera 5., and if this is still an issue please reopen this ticket (or file a new for the PUP project).\nClosing this as there has been no activity on this ticket since 2014 (> 3 years).", "created": "2017-08-22T08:40:00.000000"}], "components": [], "created": "2014-12-08T08:52:00.000000", "creator": "557058:51ceb1cf-5598-4a78-a5a0-4ab1a44f3c2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@176533eb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxge7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85358952633_*|*_6_*:*_1_*:*_0"}], "description": "Define something like this in a json file:\n\n{\n\"sudoers\":.\n  {\n    \"COMPANY\\\\some_group\":\n      {\n        ..... some data\n      },\n  }\n}\n\nWhen calling hiera_hash('sudoers'), the name received will be \"COMPANY\\some_group\".\n\nWhy is the replacement taken place? I know I can use \"COMPANY\\\\\\\\some_group\", but I didn't expect to escape strings in hiera too much.\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53715", "fixedVersions": [], "id": "53715", "issueType": "Bug", "key": "HI-302", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:51ceb1cf-5598-4a78-a5a0-4ab1a44f3c2e", "resolution": "Won't Do", "resolutionDate": "2017-08-22T08:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera replaces backslashes from variables", "timeSpent": "PT0S", "updated": "2017-08-22T08:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "HI-183 has a fix for this that allows one key to be an alias for another.", "created": "2015-03-10T15:44:00.000000"}], "components": [], "created": "2014-12-08T06:24:00.000000", "creator": "557058:f3848e45-d328-48b4-adf6-fdddf27e2348", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5de45e13"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxgdj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7978777439_*|*_6_*:*_1_*:*_0"}], "description": "hiera lookup functions can only resolve strings, but it would be nice if it also could retrieve values from within (nested) arrays and or hashes.\n\nI.e. assume configuration of a database listener port, and an application that connects to it.\n{code}\nmydb::params:\n  port: 12345\n\nmyapp::params:\n  port: 12345\n{code}\nspecifying the port in two places, it would be helpful, to be able to specify the following:\n{code}\nmydb::params:\n  port: 12345\nmyapp::params:\n  port: \"%{hiera('mydb::params:port')}\"\n{code}\nAnd it would lookup the value of the port key in the hash mydb::params.\n\nmy current workaround is:\n{code}\nglobals::dbport: 12345\n\nmydb::params:\n  port: \"%{hiera('globals::dbport')}\"\nmyapp::params:\n  port: \"%{hiera('globals::dbport')}\"\n{code}\nbut this workaround still feels a bit clumsy.", "environment": "OS is OpenBSD 5.6 -current, hiera 1.3.4, Puppet 3.7.3.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54062", "fixedVersions": [], "id": "54062", "issueType": "New Feature", "key": "HI-301", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:f3848e45-d328-48b4-adf6-fdddf27e2348", "resolution": "Duplicate", "resolutionDate": "2015-03-10T15:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "%{hiera('myvar')} should be able to lookup values within hashes", "timeSpent": "PT0S", "updated": "2015-03-10T15:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2014-11-21T06:36:00.000000", "creator": "623a4938562ab90069f7e39d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@15e520c3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9xj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11274189948_*|*_6_*:*_1_*:*_0"}], "description": "It does not seem possible to use structured facts in hiera.\nI tried many different syntaxes of extracting values e.g. os['name']\nbut even putting %{os} in a yaml file in hiera expands to an empty string", "environment": "Linux 2.6.32-431.11.2.el6.x86_64", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53909", "fixedVersions": [], "id": "53909", "issueType": "Bug", "key": "HI-299", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4938562ab90069f7e39d", "resolution": "Duplicate", "resolutionDate": "2015-03-31T19:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "structured facts not available in hiera", "timeSpent": "PT0S", "updated": "2015-03-31T19:19:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c] [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] this is needed for the AIO work so we should see if we can do this in the next sprint.", "created": "2014-11-18T18:16:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "This is a blocker for AIO. Heads up [~accountid:557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c] and [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd].", "created": "2015-01-20T18:33:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This seems to mean that we need a release of hiera as well for AIO packaging. The default datadir is hiera's {{var_dir}}, and the default configuration is hiera's {{config_dir}}. Both are defined in hiera's lib/hiera/util.rb and are currently {{/etc}} for config_dir, and {{/var/lib/hiera}} for var_dir.\n\nPuppet has a setting to override the {{config_dir}} in the Puppet setting {{hiera_config}} which refers to {{$confdir/hiera.yaml}}. I cannot find a similar default in Puppet for hiera backend datadir - it seems to get its default from the values in hiera's util.rb.\n\nIf I read the confluence page correctly, I think hiera's {{config_dir}} should be changed to {{/etc/puppetlabs/agent/hiera.conf/}}. For hiera's {{var_dir}}, which is not a vardir in the same sense as puppet's vardir (stored under {{...agent/cache}}, the confluence page for AIO does not specify where \"data\" should be. Should it be {{/etc/puppetlabs/hiera/<something>}}, or {{/etc/puppetlabs/agent/hiera/<something>}}, or some other place?", "created": "2015-01-20T19:19:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920][~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e] Input on the above question(s) needed - where is hiera supposed to have a the default datadir in AIO ?", "created": "2015-01-22T09:16:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Marked this as blocked as someone must decide what the hiera paths should be in AIO.", "created": "2015-01-22T15:01:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] this decision is currently blocked by the higher level path decision under review in [PUP-3809]. I have set the PUP ticket as a blocker to this one.\n\ncc: [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920], [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e], [~accountid:557058:104b5720-714d-4539-b455-df472251ec89], [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0]", "created": "2015-01-23T10:47:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "We had some hallway agreement that if the FS layout change is implemented in a non backwards compatible way: a) that is fine, and b) we should call the release 2.0.\n\n/cc [~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced], [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e], [~accountid:557058:104b5720-714d-4539-b455-df472251ec89], [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] ", "created": "2015-01-23T14:25:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "We bashed this out in a room and I have run it by a few people for validation", "created": "2015-01-26T12:40:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "does that Unblock it?", "created": "2015-01-26T12:41:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] yes, if we do this for puppet's use of hiera only", "created": "2015-01-26T12:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "What is then really missing is the ability to override the default datadir from puppet (and that we add a setting for that in puppet). With those changes the hiera release can remain at 1.4 if I understand things correctly.", "created": "2015-01-26T13:01:00.000000"}, {"author": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "body": "bq. yes, if we do this for puppet's use of hiera only\n\nCan we please get rid of the distinction between hiera-as-used-by-puppet and hiera-used-from-the-command-line. A major bump would be a great time to merge those configs.", "created": "2015-01-26T14:15:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "So - decisions have been made:\n\n* The next hiera release is HI 2.0.0 since we are changing the paths in a non compatible way (i.e. there will be no HI 1.4.0 release)\n* hiera's {{lib/hiera/util.rb}} should be changed so that:\n  ** hiera's {{config_dir}} should be {{/etc/puppetlabs/agent/code}} where hiera will load a {{hiera.yaml}} if it exists. (Notably, the {{hiera.yaml}} should not be under {{.../agent/config}})\n  ** hiera's {{var_dir}} (a.k.a the default {{datadir}}) should be a directory named {{hieradata}} under the {{code}} directory in the AIO packaging i.e. {{/etc/puppetlabs/agent/code/hieradata}}. (The data itself cannot be directly in {{code}} as the other content in that directory then accidentaly may look like a data directory to hiera).\n* Since the hiera {{datadir}} can be modified in {{hiera.yaml}}, there is no need to also have an override in puppet (there is no such setting in puppet now).\n* The current puppet setting {{hiera_config}}  (currently a reference to {{$confdir/hiera.yaml}}) should be changed in orchestration with PUP-3809 and refer to the AIO {{$codedir/hiera.yaml}}).\n* Ensure that hiera's defaults and fallback when hiera.yaml is missing ends up using the paths as documented here\n\nIf during the cause of implementing this we find we need to prioritize between options, we should optimize on a solution that:\n* makes hiera tooling operate with the same settings as when using puppet\n* prioritize use cases involving combined use of puppet and hiera over those that may install hiera outside of the AIO packaging\n", "created": "2015-01-26T15:05:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "What about Windows? The current defaults are:\n\n* {{config_dir}} = {{<common appdata>\\PuppetLabs\\hiera\\etc}}\n* {{var_dir}} = {{<common appdata>\\PuppetLabs\\hiera\\var}}\n\n{{<common appdata>}} is {{C:\\ProgramData}}\n", "created": "2015-01-27T14:21:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] The windows filesystem layouts are not changing /cc [~accountid:557058:263afade-3e4f-46c6-b50a-cf2982192562]", "created": "2015-01-27T14:34:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Uncertain about this bullet:\n\n* Since the hiera {{datadir}} can be modified in {{hiera.yaml}}, there is no need to also have an override in puppet (there is no such setting in puppet now).\n\nSounds like you're saying that it doesn't exist and we don't need it, i.e. no action needed here. But you probably mean something else?\n\n", "created": "2015-01-27T14:36:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "I was a bit confused about the bullet but took it to mean \"you might read the above to mean we need a puppet override, but we don't\" or even shorter \"no action required\".", "created": "2015-01-27T15:04:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Yes, no action required - we do not need a new puppet setting for hiera datadir. (Initially I thought that was going to be needed, but we decided on a different approach).", "created": "2015-01-27T15:23:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to hiera master at https://github.com/puppetlabs/hiera/commit/4d8351bd3e8a82b8e473c8b724c70878f620de5c", "created": "2015-01-28T05:57:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "The changes to the expected path of the hiera.yaml file break the acceptance tests. I have submitted https://github.com/puppetlabs/hiera/pull/237 to fix the tests.", "created": "2015-01-28T18:06:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "The acceptance testing issue has been addressed by https://github.com/puppetlabs/hiera/pull/235 via [~accountid:557058:104b5720-714d-4539-b455-df472251ec89]. Waiting on CI now.", "created": "2015-01-28T18:29:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Testing path change for hiera.yaml is still needed. I have resubmitted https://github.com/puppetlabs/hiera/pull/238 to fix the tests.", "created": "2015-01-29T09:52:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged to master: 625837a", "created": "2015-01-29T10:42:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Verified in master at SHA=98e6271. Hiera looks /etc/puppetlabs for it's config file:\n{code}\n# bundle exec hiera --debug foodata\n[root@jo1qxf3jbpptriv hiera]# bundle exec hiera --debug foodata\nDEBUG: 2015-02-02 07:43:04 -0800: Hiera YAML backend starting\nDEBUG: 2015-02-02 07:43:04 -0800: Looking up foodata in YAML backend\nDEBUG: 2015-02-02 07:43:04 -0800: Looking for data source common\nDEBUG: 2015-02-02 07:43:04 -0800: Cannot find datafile /etc/puppetlabs/agent/code/hieradata/common.yaml, skipping\nnil\n{code}", "created": "2015-02-02T08:44:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "TestRailed as [C63188|https://testrail.ops.puppetlabs.net/index.php?/cases/view/63188]", "created": "2015-02-05T16:14:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Reopened, (description in this ticket updated).\n\nThe paths should change and drop the {{/agent/}} part of the paths.", "created": "2015-02-11T17:53:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "(y) to the changes, description matches my expectation.", "created": "2015-02-11T18:02:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to master at: d2c76ed", "created": "2015-02-12T04:44:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Hiera acceptance is failing in the AIO pipeline because it is using beaker 2.2.0, which thinks AIO installs puppet into [{{/opt/puppetlabs/agent/bin}}|https://github.com/puppetlabs/beaker/blob/beaker2.2.0/lib/beaker/host/unix.rb#L61]\n\nSee https://jenkins.puppetlabs.com/view/All%20in%20One%20Agent/view/Integrated%20Acceptance/job/platform_aio-component_intn-sys_master/44/\n\nHowever, the puppet-agent package now installs puppet, facter, hiera, openssl, etc binaries in {{/opt/puppetlabs/puppet/bin}}. This ticket should remain open until beaker is updated, see QENG-1841\n", "created": "2015-02-15T15:15:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "FR blocked by two tickets above...", "created": "2015-02-18T11:55:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "ping [~accountid:63d40628f6e1b543161789a7] should the paths for windows be changed or not? They are currently unchanged.", "created": "2015-02-19T15:31:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Paths for Windows are being specified https://github.com/puppetlabs/puppet-specifications/pull/25", "created": "2015-02-23T17:34:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "PR submitted https://github.com/puppetlabs/hiera/pull/255 but currently blocked.", "created": "2015-02-23T18:55:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "we're blocked on merging PR 255 on this, yes?", "created": "2015-02-25T15:03:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:557058:263afade-3e4f-46c6-b50a-cf2982192562], [~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715], [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] MSI changes are in, this is ready to be merged, and should probably be merged along with https://github.com/puppetlabs/puppet/pull/3646 I say probably, because we don't currently test hiera acceptance on windows, and the puppet acceptance that use hiera only happen on the master.", "created": "2015-02-25T17:03:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Merged latest Windows related PR #255 to master as https://github.com/puppetlabs/hiera/commit/0efd9276d3ada2c2f65741378a382b8c32a45e0b", "created": "2015-02-25T17:34:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Thanks [~accountid:63d40628f6e1b543161789a7] and [~accountid:557058:263afade-3e4f-46c6-b50a-cf2982192562] - looks like both PRs are merged now. Moving this to Ready for CI.", "created": "2015-02-25T18:40:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Hiera specs and acceptance passed in both pipelines, including promoting rhel7 and win2012r2 to nightlies.", "created": "2015-02-27T15:14:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "hieradata directory on nix is not created on RHEL 7. Is that expected? All other specified paths pass inspection.\n\n{code}\n# ls /etc/puppetlabs/code/hiera.yaml \n/etc/puppetlabs/code/hiera.yaml\n# ls /etc/puppetlabs/code/hieradata\nls: cannot access /etc/puppetlabs/code/hieradata: No such file or directory\n# ls -l /opt/puppetlabs/bin/hiera\nlrwxrwxrwx. 1 root root 32 Mar  2 07:59 /opt/puppetlabs/bin/hiera -> /opt/puppetlabs/puppet/bin/hiera\n# ls /opt/puppetlabs/puppet/bin/hiera \n/opt/puppetlabs/puppet/bin/hiera\n# ls /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera.rb \n/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/hiera.rb\n{code}\n\nThis validation was performed using http://builds.puppetlabs.lan/puppet-agent/1a390de7dcb73cf350083ffeb24932506541df89/artifacts/el/7/products/x86_64/puppet-agent-0.3.2.107.g1a390de-1.el7.x86_64.rpm\n\ncc [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e], [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920]", "created": "2015-03-02T12:11:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "the paths spec indicates the hieradata dir, but also indicates that the packages do not create this dir.  \nhiera is very tolerant of missing datadir(s), so i think this is fine.\n\nmoving to ready for review for good measure...", "created": "2015-03-02T12:31:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "Docs opinion: The package should really create the hieradata dir. \n\n* If the directory exists by default, it's discoverable. If it doesn't, it's secret, and you must read documentation to uncover it. \n* Even if you do read the docs, having a pre-existing directory reinforces what you learned, eases the burden on your memory, and shows you that you're on the right track.\n\nLeaving it absent is an unnecessary papercut to users. We should create it.", "created": "2015-03-02T13:01:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "I agree with [~accountid:623c08e1562ab90069f8aed4].\n\nI am throwing this back into review. We should discuss whether to bump this ticket back on the queue for this change or ticket the hieradir issue separately.", "created": "2015-03-02T13:10:00.000000"}, {"author": "557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df", "body": "Agree with Nick. Create the datadir.", "created": "2015-03-02T13:10:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Please add a separate ticket (if not already added). It is a packaging thing, not something done inside of hiera.", "created": "2015-03-02T13:37:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "This has already been done in the Windows MSI as part of PUP-4034 - landed in commit https://github.com/puppetlabs/puppet_for_the_win/commit/5ef5d302f2ccb2c2af1e2158ce6a933e927811c1", "created": "2015-03-02T13:53:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "Opened RE-4092 to track creation of hieradir during installation.", "created": "2015-03-02T15:52:00.000000"}], "components": [], "created": "2014-11-06T16:16:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@447b7ec8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyp553:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Nov/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_5_*:*_822114895_*|*_1_*:*_1_*:*_6684346_*|*_10007_*:*_5_*:*_73972974_*|*_3_*:*_2_*:*_5721044_*|*_10009_*:*_4_*:*_450674224_*|*_4_*:*_1_*:*_33641974_*|*_5_*:*_3_*:*_2614137411_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_936815634_*|*_10004_*:*_2_*:*_338443681_*|*_10006_*:*_2_*:*_6733020579"}], "description": "UPDATE\n---\nThis ticket was reopened after a decision was made to change the paths. This description has been updated to reflect the decision made in PUP-3809.\n\nThe coming update to the FS layout for our projects requires several changes to default pathing and config files to ensure that the correct directories are used. Off the top of my head this includes default datadir for hiera data.\n\nThe new layout is described here:\nhttps://confluence.puppetlabs.com/display/DEL/Unified+Puppet+Agent+Layout\n\n*Look in the spec when doing a final docs update,* since what what was previously recorded here as the final decision has changed. Notably, Windows is changing now too.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53962", "fixedVersions": ["HI 2.0.0"], "id": "53962", "issueType": "Task", "key": "HI-298", "labels": ["AIO"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "resolution": "Fixed", "resolutionDate": "2015-03-02T15:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update FS layout for hiera", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:8ed100be-9a13-4ed1-92d2-88ac897d6774", "attachments": [], "comments": [{"author": "623a4bee866b810069e3689a", "body": "Actually, it does:\n\n{noformat}\ndaniele.sluijters@vm0002 /v/l/g/1.9.1> dpkg -l hiera\nDesired=Unknown/Install/Remove/Purge/Hold\n| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend\n|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)\n||/ Name                                    Version                  Architecture             Description\n+++-=======================================-========================-========================-===================================================================================\nii  hiera                                   1.3.4-1puppetlabs1       all                      A simple pluggable Hierarchical Database.\n\ndaniele.sluijters@vm0002 /v/l/g/1.9.1> irb\nirb(main):001:0> require 'hiera'\n=> true\n{noformat}\n\nLooks like your {{GEM_PATH}} is the issue. Try unsetting that, Debian's default should also include {{/usr/lib/ruby/vendor_ruby}} which is where Hiera and Puppet are installed. This adheres to the Debian policy. Packaged Rubygems go into {{/usr/lib/ruby_vendor}}, {{gem install}} goes into {{/var/lib/gems}}.", "created": "2014-10-17T02:24:00.000000"}, {"author": "557058:8ed100be-9a13-4ed1-92d2-88ac897d6774", "body": "{code}\n< igalic> daenney: it could be that the gem_path comes from a \"poisoned\" ssh env...\n< daenney> Could be, but it's wrong. It's why you're having trouble at the command line\n< igalic> daenney: yeah, i ran gem by hand to get it installed, so it could be it.\n< igalic> daenney: thaaaanks! had the gem installed by puppet now, and now it just works\u2122\n{code}\n\n(closing as cannot repro, although that's incomplete: should be: cannot repro, when done properly, a.k.a.: invalid ", "created": "2014-10-17T04:00:00.000000"}, {"author": "557058:c1aa8056-6473-479b-bb79-3ce6e45bce2f", "body": "I had the same problem on my Vagrant boxes I use for Puppet module development. On the box that runs a Puppet master I had to use the {{--ignore-dependencies}} install option so that Puppet could install the hiera-file Gem without a dependency error:\n\n{code}\n  package { 'hiera-file':\n    ensure          => $hiera_file_package_ensure,\n    name            => $hiera_file_package_name,\n    provider        => 'gem',                                                                                                                                                                                  \n    install_options => '--ignore-dependencies',\n  }\n{code}\n\nSo why would Puppet, when running `gem install` use a wrong GEM_PATH and not find Hiera as a Gem anywhere?", "created": "2014-10-17T05:26:00.000000"}], "components": [], "created": "2014-10-16T07:47:00.000000", "creator": "557058:8ed100be-9a13-4ed1-92d2-88ac897d6774", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1bf6015d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywrx3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Oct/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_72764531_*|*_5_*:*_1_*:*_0"}], "description": "when installing the hiera package from apt.puppetlabs.com, it's not registered as gem, this  makes it \"tricky\" to install third-party gems that depend on hiera:\n\n{code}\nigalic@puppet01-mgmt ~ % hiera foreman01.mgmt.acme.com.key.pem\nWARN: 2014-10-16 15:50:42 +0200: Cannot load backend file: Could not find 'hiera' (>= 1.0.0) among 24 total gem(s)\nChecked in 'GEM_PATH=/home/igalic/.gem/ruby/1.9.1:/usr/lib/ruby/gems/1.9.1', execute `gem env` for more information\nnil\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53744", "fixedVersions": [], "id": "53744", "issueType": "Bug", "key": "HI-297", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:8ed100be-9a13-4ed1-92d2-88ac897d6774", "resolution": "Cannot Reproduce", "resolutionDate": "2014-10-17T04:00:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera (debian) package does not register as gem", "timeSpent": "PT0S", "updated": "2015-01-22T17:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0991a2f6400069eb769b", "attachments": [{"attacher": "pmigzhnqxpgmr8hkijxx", "created": "2014-12-05T01:49:00.000000", "name": "backend.rb.example", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14171"}, {"attacher": "pmigzhnqxpgmr8hkijxx", "created": "2014-12-05T01:49:00.000000", "name": "backend.rb.patch", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14175"}], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Andreas,\n\nHave you submitted a PR against hiera? Also, can you reference that PR instead of including the patch and clean up the other output if it's not included in the PR? The lack of proper formatting makes it difficult to read. You can wrap blocks in { noformat } (without the spaces) before and after, that may help.", "created": "2014-12-04T16:40:00.000000"}, {"author": "999854:17265a15-baa8-4187-9417-f2d8d358ed56", "body": "Hi Rob,\n\nI hope this meets your requirements now.\n\nbest wishes", "created": "2014-12-05T02:12:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Andreas,\n\nAre you familiar with github and pull requests? The hiera project is located at https://github.com/puppetlabs/hiera, you can click fork in the top right and create a pull request against the master branch. For reference, the file and lines you are mentioning are located at https://github.com/puppetlabs/hiera/blob/99cdcdd828dff27f688ed4e0da331b12de760eb2/lib/hiera/backend.rb#L175-L184.\n\nSubmitting a PR is the best way to share your patch, allow automated testing, and allow the project maintainers to accept the patch if all tests succeed. If you are unfamiliar with the process, you can get help on freenode IRC channel #puppet-dev and someone will be able to give you some specific assistance.", "created": "2014-12-27T10:40:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "With hiera 5 there is now much better control over how merges are performed. This ticket is for the old, now deprecated hiera 3. Closing this with \"Won't Do\".", "created": "2017-08-22T08:26:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "If I misunderstood something (this is a feature also missing in hiera 5) please open a ticket for the PUP project since hiera 5 is now in the puppet code base, not in the separate HI project which remains to be only for the deprecated hiera 3.", "created": "2017-08-22T08:28:00.000000"}], "components": [], "created": "2014-10-08T06:58:00.000000", "creator": "999854:17265a15-baa8-4187-9417-f2d8d358ed56", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@25db33b2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywmun:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_90639009633_*|*_6_*:*_1_*:*_0"}], "description": "Aim:\nWith deeper merging of Hiera defined hashes it should be possible to remove previously defined hash-values.\n\nThis tiny patch fulfills this imposition:\nPatch /usr/lib/ruby/vendor_ruby/hiera/backend.rb with\n---------------------------------------------------------------------------\n{noformat}\n--- orig/backend.rb\n+++ improvement/backend.rb\n@@ -173,6 +173,16 @@\n       #  :deeper => Use Hash.deep_merge!\n       #\n       def merge_answer(left,right)\n+       if Config[:merge_exclude_string]\n+        case Config[:merge_behavior]\n+        when :deeper,'deeper'\n+          left.deep_merge!(right, {:knockout_prefix => Config[:merge_exclude_string]})\n+        when :deep,'deep'\n+          left.deep_merge(right, {:knockout_prefix => Config[:merge_exclude_string]})\n+        else # Native and undefined\n+          left.merge(right)\n+        end\n+       else\n         case Config[:merge_behavior]\n         when :deeper,'deeper'\n           left.deep_merge!(right)\n@@ -181,6 +191,7 @@\n         else # Native and undefined\n           left.merge(right)\n         end\n+       end\n       end\n \n       # Calls out to all configured backends in the order they\n{noformat}\n---------------------------------------------------------------------------\n(Please be generous, these are my first lines ruby code)\n\nThus a new hiera.yaml key is introduced:\n:merge_exclude_string\nIt's value is used as for option :knockout_prefix in the underlying ruby module deep_merge (https://github.com/danielsdeleo/deep_merge) \nto remove array entries and hash values.\n\nUsage of :merge_exclude_string in the hash to be merged:\n./ A hash value prefixed with :merge_exclude_string will become an empty string\n./ The :merge_exclude_string used alone results in an empty string as hash value, all values defined previously will become deleted.\n./ An array member prefixed with :merge_exclude_string will be removed from the array.\n./ The :merge_exclude_string used alone as an array member will give an empty array.\n./ Any value or array-member prefixed with :merge_exclude_string will not be included even if it was not defined previously.\n./ Merging different types of values will cause the deletion of the previously defined value as it was before.\n\nExample:\n/tmp/hieradata/hiera.yaml:\n--------------------------------------\n{noformat}\n---\n:backends:\n  - yaml\n:yaml:\n  :datadir: /tmp/hieradata\n:hierarchy:\n  - replace\n  - common\n:merge_behavior: deeper\n:merge_exclude_string: '--'\n{noformat}\n--------------------------------------\n/tmp/hieradata/common.yaml:\n--------------------------------------\n{noformat}\n---\nK:\n  KA:\n    KA1: valA1\n    KA2: valA2\n    KA3: valA3\n    KA4: valA4\n  KB:\n    KB1: valB1\n    KB2: to_be_removed_valB2\n    KB3: valB3\n    KB4: valB4\n  KC:\n    KC1: valC1\n    KC2: valC2\n    KC3: valC3\n    KC4: valC4\n  KD:\n    KD1:\n      - array_member_D1\n      - array_member_D2\n      - array_member_D3\n      - array_member_D4\n  KE:\n    KE1:\n      - array_member_E1\n      - to_be_removed_array_member_E2\n      - array_member_E3\n      - array_member_E4\n  KF:\n    KF1:\n      - all_to_be_removed_array_member_F1\n      - all_to_be_removed_array_member_F2\n      - all_to_be_removed_array_member_F3\n      - all_to_be_removed_array_member_F4\n  KG:\n    KG1:\n      - all_to_be_removed_array_member_G1\n      - all_to_be_removed_array_member_G2\n      - all_to_be_removed_array_member_G3\n      - all_to_be_removed_array_member_G4\n  KH:\n    KH1:\n      - all_to_be_removed_array_member_H1\n      - all_to_be_removed_array_member_H2\n      - all_to_be_removed_array_member_H3\n      - all_to_be_removed_array_member_H4\n{noformat}\n--------------------------------------\n/tmp/hieradata/replace.yaml:\n--------------------------------------\n{noformat}\n---\nK:\n  KA:\n    KA1: replace_valA1\n    KA5: add_valA4\n  KB:\n    KB2: --to_be_removed_valB2\n    KB5: --not_found_valB2\n  KC: --\n  KD:\n    KD1:\n      - add_array_member_D5\n  KE:\n    KE1:\n      - --to_be_removed_array_member_E2\n      - --not_found_array_member_E5\n  KF:\n    KF1:\n      - --\n  KG:\n    KG1: --\n  KH: ''\n{noformat}\n--------------------------------------\n\nhiera -h -c /tmp/hieradata/hiera.yaml K yields:\n--------------------------------------\n{noformat}\n{\"KA\"=>\n  {\"KA1\"=>\"replace_valA1\",\n   \"KA2\"=>\"valA2\",\n   \"KA3\"=>\"valA3\",\n   \"KA4\"=>\"valA4\",\n   \"KA5\"=>\"add_valA4\"},\n \"KB\"=>{\"KB1\"=>\"valB1\", \"KB2\"=>\"\", \"KB3\"=>\"valB3\", \"KB4\"=>\"valB4\"},\n \"KC\"=>\"\",\n \"KD\"=>\n  {\"KD1\"=>\n    [\"array_member_D1\",\n     \"array_member_D2\",\n     \"array_member_D3\",\n     \"array_member_D4\",\n     \"add_array_member_D5\"]},\n \"KE\"=>{\"KE1\"=>[\"array_member_E1\", \"array_member_E3\", \"array_member_E4\"]},\n \"KF\"=>{\"KF1\"=>[]},\n \"KG\"=>{\"KG1\"=>\"\"},\n \"KH\"=>\"\"}\n{noformat}\n--------------------------------------\n\nUnfortunatly deep_merge has a glitch:\nIn contrary to its statement, keys do not become removed with deep_merge option :knockout_prefix but there value will be set to an empty string only, which is not the same. Thus Hiera hash keys don't become deleted too but remain with a value \"\".\n\nFor puppet programmers this implies, that functions must not distinct between undef and empty string, if deeper merge is used.", "environment": "could solve Feature-Request #18793\nruby 1.9", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53743", "fixedVersions": ["HI 1.3.4"], "id": "53743", "issueType": "Improvement", "key": "HI-296", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "999854:17265a15-baa8-4187-9417-f2d8d358ed56", "resolution": "Won't Do", "resolutionDate": "2017-08-22T08:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera merging: remove values when :merge_behavior is set to deeper", "timeSpent": "PT0S", "updated": "2017-08-22T08:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "That is correct. I cannot imagine how you would want that to work. Your best bet is to set up an external build step that creates the files you want in your hiera data. Use rake or something that runs ruby and use ERB templates to create the files you want.\n\nI cannot see how using puppet's ability to evaluate template files for the purpose of providing file content etc. can help with \"creating a file in hiera\" (I assume you mean a data file), unless you create a puppet catalog that manages a set of hiera data files, that you then use as the hiera data for subsequent runs. (i.e. create a build step by using puppet).\n\nThis seems too elaborate to be useful in practice. Closing as Won't fix. If you meant something else, please reopen.", "created": "2014-10-02T17:36:00.000000"}, {"author": "70121:dfdea961-7f84-4dc0-97aa-b401ebb9630d", "body": "Let me see if this explains my thought process better.\n\n{code:title=site.pp|borderStyle=solid}\n$file_defaults = {\n  'ensure' => file,\n}\n\ncreate_resources(file, hiera_hash('files'), $file_defaults)\n{code}\n\n{code:title=mynode.yaml|borderStyle=solid}\nfiles:\n    '/home/myuser/.bash_profile':\n        owner: myuser\n        group: mygroup\n        content: \"%{template('myusermodule/.bash_profile.erb')}\"\n    '/home/user/public/index.html':\n        owner: myuser\n        group: myuser\n        content: \"%{template('myusermodule/public/index.html.erb')}\"\n{code}\n\n{code:title=index.html.erb|borderStyle=solid}\n<h1>User account is now ready to use for Hostname: <b><%= @hostname %></b></h1>\n{code}\n\nRight now I can go all the way to the point of even using the puppet fileserver to populate the content of the file but I cannot call the template() function inside hiera. This limits the ability to use the create_resources function when needing to evaluate a template to insert facts about the device.", "created": "2014-10-02T17:51:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This sort of question is better asked on the user mailing list. You cannot use the template function inside of the hiera data and you need to find a different way of looking up the names of the template files and pass them into your create_resources call. The way you are doing it now results in the content being the string \"template('...')\". Hiera is not a programming language, and create_resources expects everything to be fully evaluated, it does not do interpretation of strings and perform calls to puppet functions.\n\n", "created": "2014-10-02T18:25:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:806bec00-11b5-4dd0-a9d7-efe82e2f4047", "body": "Can do a weird workaround.  Leave out the content attribute in your files hash, then append it with a resource collector with the help of the future parser.\n\n{code:none}\n[root@master /etc/puppetlabs/puppet/modules/lambchop]# cat ../../hieradata/defaults.yaml\n---\ncreateme:\n  /tmp/foo.txt:\n    ensure: file\n \ntemplates:\n  /tmp/foo.txt: 'lambchop/hash.erb'\n \n[root@master /etc/puppetlabs/puppet/modules/lambchop]# cat manifests/template.pp\nclass lambchop::template {\n  $files = hiera('createme')\n  $templates = hiera('templates')\n \n  create_resources( 'file', $files )\n \n  each($templates) |$k, $v| {\n    File <| title == $k |> { content => template($v) }\n  }\n}\n \n[root@master /etc/puppetlabs/puppet/modules/lambchop]# puppet apply -e 'include lambchop::template' --parser future\nNotice: Compiled catalog for master.puppetlabs.vm in environment production in 0.61 seconds\nNotice: /Stage[main]/Lambchop::Template/File[/tmp/foo.txt]/ensure: defined content as '{md5}3d588b08eb529e6bb4026933adac438b'\nNotice: Finished catalog run in 0.18 seconds\n \n[root@master /etc/puppetlabs/puppet/modules/lambchop]# head /tmp/foo.txt\nkernel: Linux\nfacterversion: 2.2.0\nvirtual: vmware\nis_virtual: true\narchitecture: i386\nhardwaremodel: i686\noperatingsystem: CentOS\nos: {\"name\"=>\"CentOS\", \"family\"=>\"RedHat\", \"release\"=>{\"major\"=>\"6\", \"minor\"=>\"5\", \"full\"=>\"6.5\"}}\ninterfaces: eth0,eth1,lo\n{code}", "created": "2014-12-22T12:47:00.000000"}, {"author": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "body": "This is same issue with using bunch of hiera hashes and using the file() function won't work either. \nWould be nice if there was a way around this. ", "created": "2016-07-26T18:25:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "How about organizing the data so that the files are represented by a hash that is deep merged. You then lookup the \"set of files\" to operate on and iterate - do not use {{create_resources}} since you can do the same with puppet code using future parser/4.x. If you are on 4.x you should use {{lookup}} to be able to control deep-merge per key.\n\nFor 3.x with future parser:\n{code:puppet}\nhiera_hash('files').each |$name, $template| { file { $name: content => $template }}\n{code}\nYou probably want the template evaluated, and not the name of the template (the examples above do that).\n{code:puppet}\nhiera_hash('files').each |$name, $template| { file { $name: content => template($template) }}\n{code}\nYou can have additional things in the looked up hash, but where you want to transform the template key, this can be done by using the template as a default value for 'content' unless the looked up hash has explicit content set. The 'template' entry is removed as it is not a known attribute of File.\n{code:puppet}\nhiera_hash('files').each |$name, $attributes| {\n  $attr_values = $attributes - 'template'\n  file { \n    default :\n      content => template($attributes['template']) ", "created": "2016-07-27T06:24:00.000000"}, {"author": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "body": "Thanks for the reply Henrik.\nI was actually curious if there was a way {code:yaml}%{file('profile/logstash.json')}{code} could evaluate.\n\nMy problem was something like:\n\n\n{code:yaml}\nelasticsearch::templates:\n  default:\n    content: '{ \"template\" : \"*\", \"order\" : 1, \"settings\" : { \"index.routing.allocation.require.node_type\" : \"hot\" } } '\n  logstash:\n    content: \"file('profile/logstash.json')\"\n{code}\n\n\nAnd then code like the following:\n\n\n{code:puppet}\n  $templates = hiera_hash('elasticsearch::templates', {})\n  create_resources(elasticsearch::template,$templates)\n{code}\n\n\nYour way of doing it above I couldn't mix and match these 2 types since potentially I guess it could be \n\n{code:puppet}\ncontent => 'string of content'\nfile => 'puppet:///profile/template.json')\ncontent => file('profile/template.json')\ncontent => template('profile/template.json.erb')\n{code}\n\nwhere the first 2 are the \"valid\" parameters and the other 2 are desired evaluations.\n\nSo in order to do this I'd probably end up with 2 different hashes... 1 for straight passing to \n{{elasticsearch::template}} (like create_resources or future parser loop) and then another hash that can be evaluated and then have that passed to {{elasticsearch::template}} in a loop... so it could be done just would require some re-work.\n\nFor now I have the ones that can be passed to create resources directly in hiera (since don't require evaluation) and then added the individual \n\n\n{code:puppet}\nelasticsearch::template {'mytemplate':\n  content => file('profile/template.json')\n}\n{code}\n\n\nThanks as always for the help and detailed explanation.", "created": "2016-07-27T09:32:00.000000"}], "components": [], "created": "2014-10-02T15:56:00.000000", "creator": "70121:dfdea961-7f84-4dc0-97aa-b401ebb9630d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@11a46cde"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywl4n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Oct/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6006161_*|*_6_*:*_1_*:*_0"}], "description": "When creating a file in hiera there is no way to be able to use puppets erb template parser function.\n\nhttps://docs.puppetlabs.com/references/latest/function.html#template", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53908", "fixedVersions": [], "id": "53908", "issueType": "New Feature", "key": "HI-295", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:dfdea961-7f84-4dc0-97aa-b401ebb9630d", "resolution": "Won't Fix", "resolutionDate": "2014-10-02T17:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "When using hiera to create_resources for puppet, allow to pass puppet template function", "timeSpent": "PT0S", "updated": "2016-07-27T09:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:87e60a31-ae67-4797-87c3-1873095e2bb9", "body": "Also, it would allow you to potentially utilise the list of classes assigned to a machine hence traversing data relevant to what is applied to a box i.e. if classes contained an array list of classes assigned to a machine, then modules could find other data for other modules within it:\n\n\n---\n:backends:\n  - yaml\n:hierarchy:\n  - defaults\n  - \"modules/%{module_name}/%{::classes}\"\n  - global\n\nSo if you had a box which had jenkins + sudo modules assigned, you could drop have modules/sudo/jenkins.yaml on the machine with specific jenkins sudo rules and sudo, when it went to compile data for the module, would read the jenkins.yaml and apply the sudo rules for jenkins on the box. If you removed jenkins module, it wouldn't find it anymore.", "created": "2015-01-26T07:34:00.000000"}, {"author": "557058:87e60a31-ae67-4797-87c3-1873095e2bb9", "body": "This woudl mean i wouldn't have to use my custom wrapper function around hiera to achieve this: \n\nhttps://github.com/jon-shanks/customlib", "created": "2015-01-26T07:35:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "In PUP-1640 we have defined a new mechanism that allows a provider of data to be specified per module and per environment in a way that does not force a user to use one particular technology for supplying the data. That mechanism will cater to the need of being able to associate the data for a module with a module and not having to update the global hierarchy.\nI believe that [~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd] is working on an implementation for PUP-1640 for hiera.\n\nAs for \"expanding the hierarchy\" based on the contents of an array I see no harm in adding such a feature even if it may be a bit difficult since it means that different requests will end up with a different hierarchy (i.e. different number of levels) - something I am not sure the current implementation can deal with in a straight forward way.", "created": "2015-01-26T08:29:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "This feature has been requested many times:\n\nhttps://github.com/puppetlabs/hiera/pull/193\nhttps://github.com/puppetlabs/hiera/pull/48\n\nI'd like to see it implemented, but lots of to and fro in those 2 PRs", "created": "2015-01-26T08:35:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as duplicate of HI-257 as it has more information and a discussion (in the ticket as well as in the PRs about the implications and reasoning why this is difficult in practice).\n\nIf someone has brilliant ideas or a good implementation, please continue the discussion on HI-257.", "created": "2015-01-26T08:40:00.000000"}], "components": [], "created": "2014-10-02T12:16:00.000000", "creator": "623a45cd866b810069e36687", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@64288799"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywkxz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10013081462_*|*_6_*:*_1_*:*_0"}], "description": "Users would like hiera to be able to traverse a fact that returns an array. If one were to have an array (eg fact = [test1,test2,test3]) hiera would itterate over each element of the array when reading the hierarchy.\n\nExample:\n\n{code}\n---\n:backends:\n  - yaml\n:hierarchy:\n  - defaults\n  - \"%{fact}\"\n  - global\n\n:yaml:\n  :datadir: /var/lib/hiera\n{code}\n\nIf fact = [test1,test2,test3], hiera would check for values in global.yaml, test1.yaml, test2.yaml, test3.yaml, and defaults.yaml in the example above.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53796", "fixedVersions": [], "id": "53796", "issueType": "New Feature", "key": "HI-294", "labels": ["customer"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a45cd866b810069e36687", "resolution": "Duplicate", "resolutionDate": "2015-01-26T08:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Traverse hiera with a fact that returns an array", "timeSpent": "PT0S", "updated": "2015-01-26T08:42:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c093301f8660070b6fa12", "body": "I am also running into this issue.\nSee my question at: http://ask.puppetlabs.com/question/14581/puppet-37-hiera-lookups/ for more details regarding my setup/configuration.", "created": "2014-11-17T15:08:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "the default strategy is to show just the first match.  like hiera() does.  Array merge needs --array and hash merge needs --hash on the command line for hiera.", "created": "2014-11-21T02:46:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Since the automatic lookup is using a plain hiera lookup no merge is performed.\nClosing this issue as won't fix since the behavior is intentional. It is also not easily changed since introducing merging here will break everyone that count on merging not taking place.", "created": "2014-11-21T11:17:00.000000"}], "components": [], "created": "2014-09-25T09:50:00.000000", "creator": "63d2e1b4a197e05f9dae481b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7724b10c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywhhj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Nov/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4933636535_*|*_6_*:*_1_*:*_0"}], "description": "I am trying to implement hiera merging. hier is my hiera.yaml\n{code}\n    ---\n    :hierarchy:\n     - fqdn/%{fqdn}\n     - roles/%{role}\n     - os/%{osfamily}\n     - common\n    :backends:\n     - yaml\n    # options are native, deep, deeper\n    :merge_behavior: deeper\n    :yaml:\n     :datadir: /etc/puppet/environments/%{environment}/data\n\n{code}\nthen I have:\ncommon.yaml \n{code}\n    ---\n    classes: \n     - a\n     - b \n{code}\nand fqdn/some.host.yaml \n{code}\n    ---\n    classes: \n     - c\n     - d\n{code}\nrunning\n{code}\n    hiera --debug -c /etc/puppet/hiera.yaml classes fqdn=some.host environment=development\n    [\"c\", \"d\"]\n{code}\nand\n{code}\n    hiera --debug -c /etc/puppet/hiera.yaml classes fqdn=blablahost environment=development\n    [\"a\", \"b\"]\n{code}\nso the \"blablahost\" take a common.yaml and applied \"a\" and \"b\" classes.. but fqdn=some.host should apply a,b,c,d.. and not only c,d \n\nI noticed that other user also facing this issue.\n\ninstalled packages are:\n{code}\nrubygem-deep-merge-1.0.0-1.el6.noarch\nhiera-1.3.4-1.el6.noarch\npuppetlabs-release-6-11.noarch\npuppet-3.7.1-1.el6.noarch\npuppet-server-3.7.1-1.el6.noarch\n{code}\n\nRegards", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53609", "fixedVersions": [], "id": "53609", "issueType": "Bug", "key": "HI-293", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "63d2e1b4a197e05f9dae481b", "resolution": "Won't Fix", "resolutionDate": "2014-11-21T11:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "merging not working", "timeSpent": "PT0S", "updated": "2014-11-21T11:17:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is already in the works. The foundation is implemented in Puppet 4.0.0, and the Epic PUP-4474 covers what we are doing for 4.1.0 to add hiera features to \"data in modules and environments\". I am marking this as a duplicate as PUP-4474 and closing the ticket.", "created": "2015-04-30T16:34:00.000000"}], "components": [], "created": "2014-09-23T16:36:00.000000", "creator": "623c0b64866b810069e43480", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@18b95186"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywg9r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_18921473753_*|*_6_*:*_1_*:*_0"}], "description": "Overview:\nHiera should allow for module specific hiera functionality. Ideally this will be carried over to core Puppet as well.\n\nUser case:\nA feature in Hiera that is aware of modules, and can provide a list of hiera variables dependant on the modules.\nThis is to avoid needing to write a large number of parameters, and instead, let them specify things for modules in yaml, such that for each module, you have a default hiera value globally, and then the ability to customize those values to be module aware.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53788", "fixedVersions": [], "id": "53788", "issueType": "New Feature", "key": "HI-373", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c0b64866b810069e43480", "resolution": "Duplicate", "resolutionDate": "2015-04-30T16:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Module-specific Hiera", "timeSpent": "PT0S", "updated": "2015-04-30T16:35:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "attachments": [], "comments": [], "components": ["QA"], "created": "2014-09-15T17:53:00.000000", "creator": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5955f9a2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywbyv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29172531460_*|*_6_*:*_1_*:*_0"}], "description": "hiera's acceptance test pre-suite setup is different from other core projects.  this can create churn for QE and when QA uses the setup to write and debug tests.  \nwe can also take this opportunity to expand platform coverage, to come in-line with the other core projects.  ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53742", "fixedVersions": [], "id": "53742", "issueType": "Improvement", "key": "HI-292", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "resolution": "Duplicate", "resolutionDate": "2015-08-19T09:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "improve hiera acceptance pre-suite and layout", "timeSpent": "PT0S", "updated": "2015-08-19T09:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "The Ruby stack size is controlled by {{ulimit -s}}. However, {{Error 400 on SERVER: stack level too deep}} is usually a huge red flag indicating that infinite recursion is occurring. Bumping the stack size will not help in these conditions.\n\nGiven this was reported against nested {{hiera()}} calls, the lookup was most likely caught in an infinite loop.", "created": "2014-09-15T13:26:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Won't fix this in hiera 2.x, sorry. Use hiera5 which supports deeper hierarchies.", "created": "2017-01-30T17:11:00.000000"}], "components": [], "created": "2014-09-15T12:51:00.000000", "creator": "623e797fd32a94006a65d711", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@359841e9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywbpr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Sep/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_75014410375_*|*_6_*:*_1_*:*_0"}], "description": "Currently the stack level limit is hard coded. It would be nice if it could be configured, especially when there is a use case for multiple levels of hiera lookups.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53741", "fixedVersions": [], "id": "53741", "issueType": "Improvement", "key": "HI-332", "labels": ["support"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623e797fd32a94006a65d711", "resolution": "Won't Fix", "resolutionDate": "2017-01-30T17:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow for the stack level limit to be configurable", "timeSpent": "PT0S", "updated": "2017-01-30T17:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "covered in spec", "created": "2014-10-02T13:19:00.000000"}], "components": ["QA"], "created": "2014-09-08T12:46:00.000000", "creator": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1feb5dfd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "HI-288"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyw8gf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2075597806_*|*_6_*:*_1_*:*_0"}], "description": "create automated acceptance tests for hiera yaml backend; ordering.  high priority tests.  functionality not yet covered.\n", "epicLinkSummary": "Create a test plan for hiera", "estimate": "PT0S", "externalId": "53607", "fixedVersions": [], "id": "53607", "issueType": "Improvement", "key": "HI-291", "labels": [], "originalEstimate": "PT0S", "parent": "53787", "parentSummary": "Create a test plan for hiera", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "resolution": "Won't Fix", "resolutionDate": "2014-10-02T13:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "automate yaml ordering acceptance tests", "timeSpent": "PT0S", "updated": "2015-01-23T06:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "covered in spec\n", "created": "2014-10-02T13:19:00.000000"}], "components": ["QA"], "created": "2014-09-08T12:45:00.000000", "creator": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@48ffd522"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "HI-288"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyw8g7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2075664132_*|*_6_*:*_1_*:*_0"}], "description": "create automated acceptance tests for hiera yaml backend basic functionality.  high priority tests.  functionality not yet covered.\n", "epicLinkSummary": "Create a test plan for hiera", "estimate": "PT0S", "externalId": "53538", "fixedVersions": [], "id": "53538", "issueType": "Improvement", "key": "HI-290", "labels": [], "originalEstimate": "PT0S", "parent": "53787", "parentSummary": "Create a test plan for hiera", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "resolution": "Won't Fix", "resolutionDate": "2014-10-02T13:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "automate yaml backend acceptance tests", "timeSpent": "PT0S", "updated": "2015-01-23T06:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "[~accountid:557058:254cdefb-9532-46cb-b4ac-84c3df97d6af] This ticket was pulled into the current sprint during our meeting this morning about Hiera testing. [~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] has been preparing a set of test cases for hiera in testrail: https://testrail.ops.puppetlabs.net/index.php?/suites/overview/3\n\nOne of the things we discussed was the need to review the changes in this PR with an eye towards whether they were duplicating coverage in specs, or providing new coverage or enhancing coverage from a user (rather than a component) perspective.\n\nThis would be part of the initial auditing of existing hiera test coverage in the context of the above proposed testrail cases.  (Please correct me as needed, Eric, I just wanted to give Britt some context :)", "created": "2014-09-16T13:22:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "thanks [~accountid:557058:252602f6-56c9-47a2-a176-2c9c57106330]!  beat me to it and said it better than i could have.  \ni'll sit down with [~accountid:557058:254cdefb-9532-46cb-b4ac-84c3df97d6af] and review specs.   we'll record some results in here.\ntotally acceptable, IMO, if this slips a sprint as long as it doesn't mess with your burndown metrics :-)", "created": "2014-09-16T13:53:00.000000"}, {"author": "557058:254cdefb-9532-46cb-b4ac-84c3df97d6af", "body": "Thanks [~accountid:557058:252602f6-56c9-47a2-a176-2c9c57106330] for the additional context.\nI was briefed by [~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] about this ticket. I started looking into the spec tests to figure out what we were actually testing in there and where everything was just to start getting familiar with it so that I can compare it to what I saw in the three new acceptance tests.", "created": "2014-09-16T14:08:00.000000"}, {"author": "557058:254cdefb-9532-46cb-b4ac-84c3df97d6af", "body": "[~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] and I reviewed the spec tests and the acceptance tests and found that the acceptance tests that had been proposed were covered in the spec tests already. Adding in these tests looks like it duplicates the \"should pick data earliest source that has it for priority searches\" tests in the backends spec tests.", "created": "2014-09-16T16:55:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "[~accountid:557058:254cdefb-9532-46cb-b4ac-84c3df97d6af] i took another look at:\nhttps://github.com/puppetlabs/hiera/blob/master/spec/unit/backend/yaml_backend_spec.rb#L40\nit *says* pick the earliest datasource.  but it looks to me that it only supplies a yaml backend and doesn't configure two?\ncan this be done in spec? ", "created": "2014-09-16T17:31:00.000000"}, {"author": "557058:254cdefb-9532-46cb-b4ac-84c3df97d6af", "body": "I'll double check that to see if anything in the spec tests multiple values to pick the one in the correct order.", "created": "2014-09-16T18:09:00.000000"}, {"author": "557058:254cdefb-9532-46cb-b4ac-84c3df97d6af", "body": "[~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] It looks like the \"calls to all backends till an answer is found\" covers if there are more than one backend.\nSee here: https://github.com/puppetlabs/hiera/blob/master/spec/unit/backend_spec.rb#L458", "created": "2014-09-17T11:28:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "i believe https://github.com/puppetlabs/hiera/blob/master/spec/unit/backend_spec.rb#L515\n\"uses the earliest backend result for priority searches\" covers the find the first backend values first, nicely.\n\nwe can probably close this as won't fix", "created": "2014-09-17T16:29:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "covered in spec.", "created": "2014-09-17T16:30:00.000000"}], "components": ["QA"], "created": "2014-09-08T12:41:00.000000", "creator": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5d6d199d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "HI-288"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypolb:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Sep/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_685149709_*|*_10007_*:*_1_*:*_106133514_*|*_6_*:*_1_*:*_0"}], "description": "create automated acceptance tests for hiera basic functionality.  high priority tests.  functionality not yet covered.", "epicLinkSummary": "Create a test plan for hiera", "estimate": "PT0S", "externalId": "54061", "fixedVersions": [], "id": "54061", "issueType": "Improvement", "key": "HI-289", "labels": [], "originalEstimate": "PT0S", "parent": "53787", "parentSummary": "Create a test plan for hiera", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "resolution": "Won't Fix", "resolutionDate": "2014-09-17T16:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "automate basic functionality acceptance tests", "timeSpent": "PT0S", "updated": "2015-01-23T06:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "https://testrail.ops.puppetlabs.net/index.php?/suites/view/141", "created": "2014-09-15T15:14:00.000000"}], "components": ["QA"], "created": "2014-09-08T12:32:00.000000", "creator": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@73c71cb9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-1"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Hiera Test Plan"}, {"fieldName": "Epic Status", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-status", "value": "To Do"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "dark_grey"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyw8fj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Sep/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_614473361_*|*_6_*:*_1_*:*_0"}], "description": "Hiera needs a test plan. The secretary has assigned you this task.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53787", "fixedVersions": [], "id": "53787", "issueType": "Epic", "key": "HI-288", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "resolution": "Fixed", "resolutionDate": "2014-09-15T15:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create a test plan for hiera", "timeSpent": "PT0S", "updated": "2015-01-23T06:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Klavs, can you provide some insight into why your use case is incompatible with the roles and profiles pattern and perhaps some additional custom facts?", "created": "2014-12-04T16:10:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This ticket is for the older hiera 3 that is now deprecated. Look at Hiera 5 and all the new features available - looks like what is wanted can now be solved with existing features.", "created": "2017-08-22T08:37:00.000000"}], "components": [], "created": "2014-08-13T03:19:00.000000", "creator": "557058:4e3eb0ca-7205-43fb-877c-a175a00d2181", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@242692f6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyvuwv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_95491109355_*|*_6_*:*_1_*:*_0"}], "description": "I'd like you to reconsider: https://github.com/puppetlabs/hiera/pull/48 (ticket being: http://projects.puppetlabs.com/issues/14369 )\n\nthis feature I definetely think has great value in some respects.. and could be configurable (defaulting to disabled) - by having f.ex. hierachy_array_concat: setting default to true.\n\nFor me this would be VERY useful (and I've heard this from others as well).\nI use netgroups to group hosts which does not necessarily have the same role..\ncurrently I would like to model a list of \"connection checks\" on doing hiera array lookup.\nso I can get a collective list of \"things to check is there\" by doing a hiera_hash lookup.\nso when the host is in group1 and group3 - and on primarynetwork X, I'd like to get all checks needed for group1, group3, primarynetwork X and what's in common.yaml.\n\nand I'd also like to use it on hosts where I use facts to autodiscover (I have hosts where puppet isn't allowed to actually do anything) - so I would get an array fact - listing everything facts have detected - which I can then use as an array, to get all relevant for the host).\n\nI hope you'll consider merging this, as a configurable option.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53786", "fixedVersions": [], "id": "53786", "issueType": "Bug", "key": "HI-286", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4e3eb0ca-7205-43fb-877c-a175a00d2181", "resolution": "Won't Do", "resolutionDate": "2017-08-22T08:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera array hierachy resolving ", "timeSpent": "PT0S", "updated": "2017-08-22T08:37:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "should be removed from stable branch, I believe.", "created": "2014-08-13T14:02:00.000000"}, {"author": "62450221ad6b7e006aa4e34c", "body": "Merged at: https://github.com/puppetlabs/hiera/commit/7aa446e784a5f71f70a978339079369788d0ea1d", "created": "2014-08-14T11:49:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:62450221ad6b7e006aa4e34c] same question: since this has been merged in, is this done?", "created": "2014-09-15T12:31:00.000000"}, {"author": "62450221ad6b7e006aa4e34c", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] since the update is in both master and stable, as far as we know this is indeed done, as long as everything looks good wrt saucy being gone for you folks in release!", "created": "2014-09-15T12:43:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Awesome, as per [~accountid:62450221ad6b7e006aa4e34c]'s feedback, I'm marking this ticket as resolved", "created": "2014-09-15T12:48:00.000000"}], "components": [], "created": "2014-08-12T16:34:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67dd6720"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyvuov:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Aug/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_77336839_*|*_10009_*:*_1_*:*_2768389904_*|*_5_*:*_1_*:*_16524073203_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_78355948"}], "description": "Saucy has already gone EOL on July 17, 2014. We will be removing the saucy repo from apt.puppetlabs.com on Monday, September 15, 2014. The build_defaults.yaml file needs to be updated before then.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53597", "fixedVersions": ["HI 2.0.0"], "id": "53597", "issueType": "Task", "key": "HI-285", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2014-09-15T12:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Remove saucy from build_defaults.yaml", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is no longer relevant since {{hiera_include}} is deprecated and you can do whatever you want using puppet language iteration and hiera 5.", "created": "2017-08-21T09:53:00.000000"}], "components": ["PE"], "created": "2014-08-12T15:19:00.000000", "creator": "623a45cd866b810069e36687", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5446a0c9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyvuhb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_95452479936_*|*_6_*:*_1_*:*_0"}], "description": "Users should be able to specify stages in hiera when using hiera_include. Currently, You cannot assign a class to a run stage when declaring it with the include function and are forced to use the resource-like class declaration syntax with stages. It is not uncommon for a user to want to include several classes via and specify the stage.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54060", "fixedVersions": [], "id": "54060", "issueType": "New Feature", "key": "HI-284", "labels": ["customer"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a45cd866b810069e36687", "resolution": "Won't Do", "resolutionDate": "2017-08-21T09:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Specifying stages within hiera", "timeSpent": "PT0S", "updated": "2017-08-21T09:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "You're not seeing the data merged in because the node/%{::fqdn} variable isn't being set. If we do a normal priority lookup and the lookup was working, we should see the node specific value but we don't:\n\n{noformat}\n[vagrant@centos65 ~]$ hiera -c /vagrant/puppet/hiera.yaml mymodule::options\n{\"param1\"=>\"param1\",\n \"param2\"=>\"param2\",\n \"param3\"=>\"param3\",\n \"param4\"=>\"param4\",\n \"nested\"=>\n  {\"param1\"=>\"nested_param1\",\n   \"param2\"=>\"nested_param2\",\n   \"param3\"=>\"nested_param3\",\n   \"param4\"=>\"nested_param4\"}}\n{noformat}\n\nThis is because the {{::fqdn}} variable isn't set. If we specify that on the command line as part of the scope we get the correct priority lookup:\n\n{noformat}\n[vagrant@centos65 ~]$ hiera -c /vagrant/puppet/hiera.yaml mymodule::options ::fqdn=centos65.vm.local\n{\"nested\"=>{\"param4\"=>\"new_nested_param4\"}}\n{noformat}\n\nAnd if we do that lookup with the scope and use a hash lookup, we see the deep merge occurring:\n\n{noformat}\n[vagrant@centos65 ~]$ hiera --hash -c /vagrant/puppet/hiera.yaml mymodule::options ::fqdn=centos65.vm.local\n{\"nested\"=>\n  {\"param1\"=>\"nested_param1\",\n   \"param2\"=>\"nested_param2\",\n   \"param3\"=>\"nested_param3\",\n   \"param4\"=>\"new_nested_param4\"},\n \"param1\"=>\"param1\",\n \"param2\"=>\"param2\",\n \"param3\"=>\"param3\",\n \"param4\"=>\"param4\"}\n{noformat}\n\nWhen running hiera on the commandline, there is no scope set up by default.\n\nSince you're using a fully qualified variable name we can't directly dump the output of Facter and use it as the scope, but if you change {{::fqdn}} to {{fqdn}} then you can use Facter as the scope input:\n\n\n{code}\n---\n:backends:\n            - yaml\n:hierarchy: - nodes/%{fqdn} # Note the omitted double colon\n            - common\n:yaml:\n  :datadir: /vagrant/puppet/hieradata\n:merge_behavior: deeper\n{code}\n\n{noformat}\n[vagrant@centos65 ~]$ facter -y > scope.yaml\n[vagrant@centos65 ~]$ hiera --hash -c /vagrant/puppet/hiera.yaml --yaml scope.yaml mymodule::options \n{\"nested\"=>\n  {\"param1\"=>\"nested_param1\",\n   \"param2\"=>\"nested_param2\",\n   \"param3\"=>\"nested_param3\",\n   \"param4\"=>\"new_nested_param4\"},\n \"param1\"=>\"param1\",\n \"param2\"=>\"param2\",\n \"param3\"=>\"param3\",\n \"param4\"=>\"param4\"}\n{noformat}", "created": "2014-08-08T11:00:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "I'm closing this issue out, if you have additional concerns please comment and we continue discussing this. Thanks very much for providing the Vagrantfile and steps to reproduce, it make it a lot easier to investigate this issue!", "created": "2014-08-08T11:02:00.000000"}, {"author": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "body": "Ok yeah I forgot to put the ::fqdn=centos65.vm.local on the command which now works:\n{code}\nhiera --hash -c /vagrant/puppet/hiera.yaml mymodule::options ::fqdn=centos65.vm.local\n{\"nested\"=>\n  {\"param1\"=>\"nested_param1\",\n   \"param2\"=>\"nested_param2\",\n   \"param3\"=>\"nested_param3\",\n   \"param4\"=>\"new_nested_param4\"},\n \"param1\"=>\"param1\",\n \"param2\"=>\"param2\",\n \"param3\"=>\"param3\",\n \"param4\"=>\"param4\"}\n{code}\nSo the issue isn't with hiera it is with Puppet. \n\nBased on this info (and leaving ::fqdn in hiera.yaml) my /tmp/mymodule.conf should have the values shown here above populated but only populates the nested:param4 from the node yaml.\n\nAm I doing something wrong to get this to work with Puppet?", "created": "2014-08-08T11:13:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "When you use data binding for variable lookups, Puppet can only use the priority lookup type. If you want to use the hash lookup, you have to directly invoke {{hiera_hash}}:\n\n{code}\ndiff --git a/puppet/modules/mymodule/manifests/init.pp b/puppet/modules/mymodule/manifests/init.pp\nindex f96be37..76dae0d 100644\n--- a/puppet/modules/mymodule/manifests/init.pp\n+++ b/puppet/modules/mymodule/manifests/init.pp\n@@ -2,10 +2,9 @@\n \n class mymodule (\n   $template = undef,\n-  $options  = undef,\n   #$options  = hiera('$options', undef),\n-  #$options  = hiera_hash('$options', undef),\n ){\n+  $options = hiera_hash('mymodule::options', undef)\n \n   file { \"mymodule_config\":\n     path    => '/tmp/mymodule.conf',\n{code}\n\n{noformat}\n[vagrant@centos65 vagrant]$ sudo puppet apply --modulepath puppet/modules  --hiera_config puppet/hiera.yaml --fileserverconfig fileserver.conf -e 'include mymodule' --verbose\nNotice: Compiled catalog for centos65.vm.local in environment production in 0.10 seconds\nInfo: Applying configuration version '1407519056'\nInfo: /Stage[main]/Mymodule/File[mymodule_config]: Filebucketed /tmp/mymodule.conf to puppet with sum 256bb409e0cadfb4b7cfe9278643d3b6\nNotice: /Stage[main]/Mymodule/File[mymodule_config]/content: content changed '{md5}256bb409e0cadfb4b7cfe9278643d3b6' to '{md5}b32b087e53c6c86b52f0a1fefef1c442'\nNotice: Finished catalog run in 0.04 seconds\n[vagrant@centos65 vagrant]$ cat /tmp/mymodule.conf \n# This file is managed by Puppet. DO NOT EDIT.\n  These are my options:\n     param1 = param1\n     param2 = param2\n     param3 = param3\n     param4 = param4\n     nested =\n       param1 = nested_param1\n       param2 = nested_param2\n       param3 = nested_param3\n       param4 = new_nested_param4\n{noformat}", "created": "2014-08-08T11:32:00.000000"}, {"author": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "body": "Thanks I guess I'm not understanding why this wouldn't work with parameterized class\n\nso \ndoesn't work:\n{code}\nclass mymodule (\n  $template = undef,\n  $options    = hiera_hash($options, undef),\n){} \n{code}\ndoesn't work:\n{code}\nclass mymodule (\n  $template = undef,\n  $options    = hiera_hash('mymodule::options', undef),\n){} \n{code}\nworks:\n{code}\nclass mymodule (\n  $template = undef,\n){\n  $options    = hiera_hash('mymodule::options', undef)\n} \n{code}", "created": "2014-08-08T11:54:00.000000"}, {"author": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "body": "Nevermind... found it:\n\nhttps://docs.puppetlabs.com/hiera/1/puppet.html#limitations\n\n{quote}\nIf you need to merge arrays or merge hashes from multiple hierarchy levels, you will have to use the hiera_array or hiera_hash functions in the body of your classes.\n{quote}\n\nThanks for the help explaining this... documentation is great but sometimes very hard to find exactly what you are looking for like this.", "created": "2014-08-08T11:59:00.000000"}, {"author": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "body": "Oddly you can use parameterized class hiera_hash just as long as you reset it in the body (so strange):\n\n{code}\n# = Class: mymodule\n\nclass mymodule (\n  $template = undef,\n  $my_options  = hiera_hash('mymodule::options', undef)\n){\n  $options = $my_options\n\n  file { \"mymodule_config\":\n    path    => '/tmp/mymodule.conf',\n    content => template($template),\n  }\n}\n{code}", "created": "2014-08-08T12:03:00.000000"}, {"author": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "body": "[~accountid:557058:11a50a90-5585-4229-994a-72322be4a7d7] I actually just ran into this issue as well it seems with class parameters mixed with hiera:\n\nhttps://github.com/vshn/puppet-gitlab/issues/28\n\n{code}\nclass {'gitlab':\n    edition => 'ce',\n    external_url => 'https://git.my.domain',\n    gitlab_rails => {\n      gitlab_username_changing_enabled => false,\n      gitlab_default_can_create_group => 'false',\n      gitlab_default_projects_features_visibility_level => 'public',\n    },\n}\n{code}\n\nand Hiera:\n\n{code}\ngitlab::gitlab_rails:\n  ldap_enabled: true\n  ldap_servers:  |\n     YAML.load <<-'EOS'\n       main:\n         label: 'Company LDAP'\n         host: 'ldap.company.tld'\n         port: 389\n         uid: 'uid'\n         method: 'plain' # \"tls\" or \"ssl\" or \"plain\"\n         bind_dn: 'MYBINDDN'\n         password: 'MYBINDPW'\n         active_directory: false\n         allow_username_or_email_login: false\n         block_auto_created_users: false\n         base: 'MYBASEDN'\n         group_base: 'MYGROUPBASE'\n         user_filter: ''\n     EOS\n\n{code}\n", "created": "2015-10-02T08:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as the ticket is for the old and deprecated hiera 3 implementation. If this is still a problem with Hiera 5 and Puppet 5, please open a new ticket for the PUP project.", "created": "2017-08-22T08:35:00.000000"}], "components": [], "created": "2014-08-08T10:15:00.000000", "creator": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@75ad8fab"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyvsaf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Aug/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2818308_*|*_4_*:*_1_*:*_95894251476_*|*_6_*:*_2_*:*_969373"}], "description": "I have uploaded a complete test using vagrant for someone to test.\n\nhttps://github.com/cdenneen/hiera_test\n\nCurrently hiera output regardless of merge_behavior is showing as \"deep\"\nCurrently puppet erb with hiera is showing as \"native\" regardless of merge_behavior setting", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53785", "fixedVersions": [], "id": "53785", "issueType": "Bug", "key": "HI-283", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:dc702caf-5630-4bcc-9efa-066ea2fc3530", "resolution": "Won't Fix", "resolutionDate": "2017-08-22T08:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "native, deep, or deeper merge not working as expected", "timeSpent": "PT0S", "updated": "2017-08-22T08:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "body": "[I have opened a pull request|https://github.com/puppetlabs/hiera/pull/239] that resolves this issue while maintaining compatibility with previous versions of Puppet.", "created": "2015-02-04T18:01:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hiera 2.0 (hiera master) only works with Puppet 4.0 and there the inventory service has been removed since it is deprecated in Puppet 3x.\n\nHiera 2.0 will be packaged as part of AIO (all in one agent) and it is done for Puppet 4.0. What we really want to do is ensure that the -i option is removed from the hiera command completely. Since it does not work in 3.x anyway, it can just be removed.", "created": "2015-02-17T16:54:00.000000"}, {"author": "623a4c79866b810069e368b5", "body": "I am hitting this issue with hiera 1.3.4", "created": "2015-03-13T14:54:00.000000"}, {"author": "62439968ad6b7e006aa41286", "body": "the original patch + changing terminus_class to :puppetdb instead of :rest works for me.  perhaps it would be better to make a new option since this is a different API than the \"inventory service\".\n", "created": "2015-03-23T17:32:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This ticket and the work associated have been obsoleted by PUP-4476, which is where this work in Hiera will happen for Puppet 4.1", "created": "2015-05-05T12:08:00.000000"}, {"author": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "body": "If this is being closed, which appears to be the case, then the documentation should be updated to remove [the reference to fixing this issue in a future release|https://docs.puppetlabs.com/hiera/1/command_line.html#note-known-bug-with-puppet-3x].", "created": "2015-05-05T14:00:00.000000"}, {"author": "557058:5001f591-7f1b-4c93-a97a-9e71b49ceb5d", "body": "Additionally, the documentation for Hiera 2 [includes information about using the inventory service as a source|https://docs.puppetlabs.com/hiera/2.0/command_line.html#inventory-service], which does not work with Puppet 4.  Relatedly, the Hiera 2 command-line tool [includes the inventory service as an option|https://github.com/puppetlabs/hiera/blob/2.0.0/bin/hiera#L86-L109] despite that functionality not working and, worse, relying on the REST facts terminus, which has been removed entirely from Puppet 4, which (as I understand it) is required to use Hiera 2.", "created": "2015-05-05T14:07:00.000000"}, {"author": "6243b1f945ece00069c8fe71", "body": "I just ran into this as well, it's functionality I could have used.  Agree that if this is not supported and will not be supported then the option should be removed from the documentation.", "created": "2015-05-27T11:00:00.000000"}], "components": [], "created": "2014-07-27T10:08:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@658c10ce"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyvab3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24371979953_*|*_6_*:*_1_*:*_0"}], "description": "due to changes in the settings initialization system, using the `-i` flag (query inventory service) from the hiera binary causes an exception with puppet 3.0.0 and above:\n\n{code}\n[eric@glitch.local ~/Sandbox]% /Users/eric/Sandbox/hiera/bin/hiera sysadmin --config /Users/eric/Sandbox/explosive-puppet/hiera.yaml -i glitch.local\nPuppet inventory service lookup failed: NoMethodError: undefined method `features' for Puppet:Module\nCould not load Puppet inventory service scope: SystemExit: exit\n{code}\n\nYou can somewhat hack around this by moving to the new `Puppet.initialize_settings` method instead of `Puppet.Settings.parse_config`, as in the following patch, but that is hardcoded to load settings for the `:user` run_mode, so you lose the ability to get the `[master]` section's settings.\n\n{code}\ndiff --git a/bin/hiera b/bin/hiera\nindex ddd4daa..1814351 100755\n--- a/bin/hiera\n+++ b/bin/hiera\n@@ -91,10 +91,8 @@ def load_scope(source, type=:yaml)\n     # is fine to have the inventory_server option set even if the config\n     # doesn't have the fact_terminus set to rest.\n     begin\n-      require 'puppet/util/run_mode'\n-      $puppet_application_mode = Puppet::Util::RunMode[:master]\n       require 'puppet'\n-      Puppet.settings.parse\n+      Puppet.initialize_settings\n       Puppet::Node::Facts.indirection.terminus_class = :rest\n       scope = YAML.load(Puppet::Node::Facts.indirection.find(source).to_yaml)\n       # Puppet makes dumb yaml files that do not promote data reuse.\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54058", "fixedVersions": [], "id": "54058", "issueType": "Bug", "key": "HI-282", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Won't Fix", "resolutionDate": "2015-05-05T12:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera binary with `-i nodename.domain.com` fails under puppet 3", "timeSpent": "PT0S", "updated": "2015-05-27T11:00:00.000000", "votes": "4", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Merged in bf3cf75.", "created": "2014-07-24T10:43:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Verified with the following:\n\nh4. hiera.yaml\n\n{code}\n:backends:\n  - yaml\n:yaml:\n  :datadir: \"/home/adrien/.puppet/hiera\"\n:hierarchy:\n  - common\n{code}\n\nh4. hiera/common.yaml\n\n{code}\n---\nfoo: {bar: baz}\n{code}\n\nh4. output:\n\n{noformat}\nhiera -c ~/.puppet/hiera.yaml -f yaml foo        \n---\nbar: baz\n{noformat}", "created": "2014-08-04T11:09:00.000000"}], "components": ["Community"], "created": "2014-07-24T07:08:00.000000", "creator": "623c17338d8b9c0068b8b580", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7ac83875"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyv8rz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Jul/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_90175086_*|*_1_*:*_1_*:*_12640016_*|*_10007_*:*_1_*:*_312162_*|*_10009_*:*_1_*:*_861774904_*|*_5_*:*_1_*:*_20158823283_*|*_6_*:*_1_*:*_0"}], "description": " * Author: Ahmet Demir <ahmet2mir+github@gmail.com>\n * Github ID: [ahmet2mir|https://github.com/ahmet2mir]\n * [Pull Request 198 Discussion|https://github.com/puppetlabs/hiera/pull/198]\n * [Pull Request 198 File Diff|https://github.com/puppetlabs/hiera/pull/198/files]\n\nJust add YAML output to https://puppet.atlassian.net/browse/HI-129\nI use hiera with other tools like Salt (custom 'backend') and yes, i can directly parse from JSON. But YAML is more \"elegant\" than JSON and I can directly use safe_load with pyyaml.\n\n[~accountid:557058:11a50a90-5585-4229-994a-72322be4a7d7] told me that YAML will move away from Hiera? Why not, but what Hiera will use ? Only JSON and custom backend ?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53566", "fixedVersions": ["HI 2.0.0"], "id": "53566", "issueType": "New Feature", "key": "HI-281", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c17338d8b9c0068b8b580", "resolution": "Fixed", "resolutionDate": "2014-08-04T11:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add YAML output format to CLI", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We now have hiera 5, and while it does not offer pluggable backends for definition of the hierarchy, the restrictions in the old hiera 3 that people were annoyed over have all been addressed. If there are any additional features required in hiera 5, please open a ticket for the PUP (puppet) project as there is where the hiera 5 implementation is.\n\nClosing this as Won't Do since hiera version 3 (free standing implementation) is deprecated.", "created": "2017-08-22T08:25:00.000000"}], "components": [], "created": "2014-07-18T14:28:00.000000", "creator": "623a4c3b4a57610068e6782b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c0c8c4b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyv5pb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_97696672251_*|*_6_*:*_1_*:*_0"}], "description": "A common request for hiera is that the way that the hierarchy is constructed needs to be made more powerful. One example of this is for array values to be expanded to multiple layers of hierarchy when they appear as the value to be substituted (see HI-257 for more information about this kind of request). While hiera's hierarchy definition is not perfect, and it does work well for a large number of users currently, it does not fit the needs of every hiera user.\n\nIn order to make it so that users can construct hierarchies that meet the needs of their installation, the portion of hiera that determines the hierarchy needs to be made pluggable. This will let users experiment and create their own hierarchy rules and go far beyond what hiera could every reasonably do out of the box.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53906", "fixedVersions": [], "id": "53906", "issueType": "Improvement", "key": "HI-280", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4c3b4a57610068e6782b", "resolution": "Won't Do", "resolutionDate": "2017-08-22T08:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Make hierarchy determination pluggable", "timeSpent": "PT0S", "updated": "2017-08-22T08:26:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "Merged into master in [60f9d2d4|https://github.com/puppetlabs/hiera/commit/60f9d2d4b8b36e6dd47c3713dd64dc793b9745c0]", "created": "2014-07-16T12:16:00.000000"}], "components": [], "created": "2014-07-08T16:59:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2f5c35de"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuzen:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Jul/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_674200552_*|*_10007_*:*_1_*:*_42854_*|*_5_*:*_1_*:*_21796399748_*|*_6_*:*_1_*:*_0"}], "description": "The puppet readme (https://github.com/puppetlabs/puppet/blob/master/README.md) explains the maintenance we have for versions of puppet and that it is semantically versioned. We recently encountered an issue with Facter where users were surprised that we did not ship a security release for a previous major version of facter. The previous assumption may have been that the puppet README was sufficient for all of our FOSS projects, but this is probably not the case. We should update the README.md in hiera with the same verbage as puppet so our intended release cycle is clear.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53709", "fixedVersions": ["HI 2.0.0"], "id": "53709", "issueType": "Bug", "key": "HI-279", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2014-07-16T12:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera README.md should express semver", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "A [PR to make some changes to how MCollective data is used by hiera|https://github.com/puppetlabs/hiera/pull/194] has a similar problem.", "created": "2014-06-27T17:41:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Duplicate of HI-184", "created": "2014-12-04T16:43:00.000000"}], "components": [], "created": "2014-06-27T17:40:00.000000", "creator": "623a4c3b4a57610068e6782b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@473f847"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuv87:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13824194298_*|*_6_*:*_1_*:*_0"}], "description": "This is going to be a little bit of a vague bug report. The problem is one of usability.\n\nWhen hiera contains a data file with:\n{noformat}\n---\n  data: \"%{::variable}\"\n{noformat}\n\nIn order to specify a value for {{::variable}} from the command line you have to do\n{noformat:title=Works}\nhiera data ::variable=value\n{noformat}\ninstead of, what many users might expect\n{noformat:title=Doesn't Work}\nhiera data variable=value\n{noformat}\n\nThe problem is how hiera looks up values when it is being used in this manner. The values are simply placed in a hash and the looked up name (the full name, no munging) is looked up as the hash key. This means that what is specified on the command line has to *exactly* match what is used in the hiera files.\n\nI would expect to be use shortcut of not needing to specify the {{::}}.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54028", "fixedVersions": [], "id": "54028", "issueType": "Bug", "key": "HI-278", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4c3b4a57610068e6782b", "resolution": "Duplicate", "resolutionDate": "2014-12-04T16:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Variables from command line don't work as expected", "timeSpent": "PT0S", "updated": "2014-12-04T16:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "62450167f6a26900695cde66", "attachments": [], "comments": [{"author": "62450167f6a26900695cde66", "body": "https://github.com/puppetlabs/hiera/pull/204", "created": "2014-06-26T16:59:00.000000"}, {"author": "62450221ad6b7e006aa4e34c", "body": "Merged at https://github.com/puppetlabs/hiera/commit/f228258b00e22ca9257712a9ee5d913368d11567", "created": "2014-07-02T12:56:00.000000"}], "components": [], "created": "2014-06-26T12:06:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@631ebab1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuu07:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_96342159_*|*_10007_*:*_1_*:*_421937681_*|*_5_*:*_1_*:*_23006730927_*|*_6_*:*_1_*:*_0"}], "description": "Debian sid/unstable regularly causes failures in acceptance because someone pushes something broken to the apt repos and then we cannot build puppet, or facter, or something we build against sid. This OS target is of questionable value, given we already build against Debian testing.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53594", "fixedVersions": ["HI 2.0.0"], "id": "53594", "issueType": "Bug", "key": "HI-277", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2014-07-02T12:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Remove sid and unstable from build_defaults", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Agree, it is a really bad idea to silently just do something much more trivial. I think it should simply error out since it produces unexpected behavior otherwise.", "created": "2014-06-17T18:54:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "I see two options:\n* if the {{:deep_merge}} setting is not {{:native}}, then we error out if {{require 'deep_merge'}} fails\n* if the {{:deep_merge}} setting is not {{:native}}, then give a warning that deep merges will fail", "created": "2014-12-04T11:00:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Just making it an error when you request the setting makes sense to me as well. Anyone else we should pull in for discussion?", "created": "2014-12-04T13:27:00.000000"}, {"author": "623c0b46d32a94006a649536", "body": "IMO, it should be the former. \n\n:deep_merge => :native means you need need the deep_merge gem for a valid configuration. In that scenario, when require 'deep_merge' fails, then you have an error.", "created": "2014-12-04T13:46:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "I'm not sure what you mean", "created": "2014-12-04T14:07:00.000000"}, {"author": "623c0b46d32a94006a649536", "body": "OK, I misread what you said. That sounds fine.\n\nI'm not sure how :native interacts with deep merge gem. (Is it loaded?) So I can't comment on that, since we don't use it.", "created": "2014-12-04T15:49:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": ":native doesn't use the {{deep_merge}} gem, it does https://github.com/puppetlabs/hiera/blob/master/lib/hiera/backend.rb#L182 (the native Hash#merge)", "created": "2014-12-04T15:52:00.000000"}, {"author": "623c0b46d32a94006a649536", "body": "Cool, makes sense then", "created": "2014-12-04T16:30:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to master https://github.com/puppetlabs/hiera/commit/17afe9761a2c97feacccccb58d1d7e88201dbb3d", "created": "2015-02-17T17:07:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Also note that Hiera 2.0.0 will be shipped using the AIO packaging where the deep merge gem is included. (In 4.0.0 Puppet also depends on that gem being present).", "created": "2015-02-17T17:08:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c08e1562ab90069f8aed4] not sure if docs need to change - the behavior is now that there is an error if a deep merge is requested and the gem is not present. Earlier it was only a warning, and unexpected data was returned.", "created": "2015-02-17T17:10:00.000000"}, {"author": "623c08e1562ab90069f8aed4", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] from a user's perspective, I consider that a straight-up bug fix. We'll want to mention it in the release notes, but that's the only docs impact. ", "created": "2015-02-17T17:13:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "installing hiera via acceptance setup gives me this when i add \":merge_behavior: deep\"  (or deeper, but not native)\ni don't think this is quite the error we were intending...\n{code}\nroot@sprmkcgs2s4k48e:~# hiera foo\nbaramu\nroot@sprmkcgs2s4k48e:~# vi /etc/puppetlabs/code/hiera.yaml\nroot@sprmkcgs2s4k48e:~# hiera foo\nFailed to start Hiera: NoMethodError: undefined method `error' for Hiera:Class\nroot@sprmkcgs2s4k48e:~# cat /etc/puppetlabs/code/hiera.yaml\n---\n:backends:\n  - yaml\n:hierarchy:\n  - defaults\n  - \"%{clientcert}\"\n  - \"%{environment}\"\n  - global\n:merge_behavior: deep\n:yaml:\n# datadir is empty here, so hiera uses its defaults:\n# - /etc/puppetlabs/code/hieradata on *nix\n# - %CommonAppData%\\PuppetLabs\\hiera\\var on Windows\n# When specifying a datadir, make sure the directory exists.\n  :datadir:\n{code}", "created": "2015-02-18T10:21:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "That is an excellent point... we don't have an error method implemented in Hiera.\n\nI'm tempted to just revert this change and say we won't fix it.", "created": "2015-02-18T11:12:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Added PR #247 to use raise instead of Hiera#error.", "created": "2015-02-18T11:44:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "this seems eerily related:\nagainst master right now:\n{code}\nroot@rxkca6epms4gput:~# puppet apply -e \"notice('hello')\"\nError: Could not run: cannot load such file -- deep_merge/core\n{code}", "created": "2015-02-18T15:24:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] are you running from source? Have you updated so you have all the gems?", "created": "2015-02-18T16:45:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "new PR (#247) merged to master at : 354c19a", "created": "2015-02-18T16:46:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] An apply with a notice works fine for me on master after having updated with \"gem install\".\n", "created": "2015-02-18T16:56:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "was happening for me from both packages and source.  i guess the pre-suite needs to be updated...\ngem install deep_merge fixed it.\n\ni had to update my bundle install to run the specs locally.  ", "created": "2015-02-18T18:16:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Now also acceptance tests are updated with explicit install of deep_merge gem on all hosts for the git and package cases.", "created": "2015-02-19T06:19:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "[~accountid:557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e], Jenkins CI has failed at 354c19abc7fc266663f8836a54e80dc829691c6d. Previously passed at 17afe9761a2c97feacccccb58d1d7e88201dbb3d. See the following job results:\n\nhttps://jenkins.puppetlabs.com/job/Hiera-Acceptance-master/203/\n\nThe tests fail to load {{deep_merge/core}}\n\n{code}\nError Message\n\nHost 'tun7xm0r4onxngv.delivery.puppetlabs.net' exited with 1 running:\n puppet apply --verbose /tmp/apply_manifest.pp.VCSHZw\nLast 10 lines of output were:\n\t[1", "created": "2015-02-19T08:22:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "Fixing with patches to add deep_merge in acceptance runs, similar to what was done for Puppet.", "created": "2015-02-19T09:45:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "FYI: The failure to load {{deep_merge/core}} is also causing stable acceptance to fail:\n\nhttps://jenkins.puppetlabs.com/job/Hiera-Acceptance-stable/364/\n\ncc: [~accountid:63d40628f6e1b543161789a7], [~accountid:623c0c4d7910a200718b910a]", "created": "2015-02-19T09:47:00.000000"}, {"author": "557058:fd17676f-b54f-4df6-b0e2-ce0f8a23c31e", "body": "I think both of those are actually unrelated to this commit, but they need to be fixed. They're all coming from Puppet's dependency on deep_merge/core", "created": "2015-02-19T09:57:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Changed status back to \"Ready for CI\" as the code is merged and we are waiting for it to clear this stage. There is nothing more to do on this ticket afaikt, the problems that have been encountered are because appropriate configuration of adding the deep_merge gem is missing elsewhere. (Better to add specific tickets that block this ticket).", "created": "2015-02-20T08:22:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "verified on rhel7 at SHA: d556bc1\n{code}\n[root@jie7txnvxllhjjh ~]# hiera foo\nFailed to start Hiera: Hiera::Error: Must have 'deep_merge' gem installed for the configured merge_behavior.\n{code}", "created": "2015-03-02T10:35:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Moving to resolved, this just removes the surprising bug that occurs when asking hiera to deep merge and the gem is missing.", "created": "2015-03-04T13:08:00.000000"}], "components": [], "created": "2014-06-17T16:56:00.000000", "creator": "623c0b46d32a94006a649536", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@14274665"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyp54v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_3_*:*_724161962_*|*_1_*:*_1_*:*_6934479_*|*_10007_*:*_1_*:*_18030544_*|*_10009_*:*_1_*:*_181906204_*|*_5_*:*_1_*:*_1831299710_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_266057363_*|*_10006_*:*_3_*:*_21256808489"}], "description": "We use :merge_behavior: deeper in our hiera\n\nThe documentation says: \n\n\"You must install the deep_merge Ruby gem for deep merges to work. If it isn\u2019t available, Hiera will fall back to the default native merge behavior.\"\n\nWhile hiera/puppet is trying to be helpful and still run, this is actually a bad idea because it will produce unexpected configurations, possibly dangerous ones, depending on how you use hiera in puppet.\n\nIn my view, hiera should either error out - or have a configuration option to error out - when it can't produce the configuration that would be expected due to dependencies being unavailable. It's preferable to not having puppet run instead of producing a bad configuration.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54002", "fixedVersions": ["HI 2.0.0"], "id": "54002", "issueType": "Improvement", "key": "HI-274", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c0b46d32a94006a649536", "resolution": "Fixed", "resolutionDate": "2015-03-04T13:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": ":merge_behavior with deep_merge gem missing should error instead of falling back", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "This does not block the puppet ticket, because the issue is in an unreleased version of hiera (in master only).", "created": "2014-06-13T15:47:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "I had to create a PR against stable, because its Gemfile was wrong, e.g. windows-api, and it referenced gems that we need to eliminate. The only gem it actually needs to depend on is win32-dir, which itself has a dependency on ffi, though hiera doesn't need to know that. I also filed a separate PR against master, because it includes the ext/project_data.yaml file, used when generating hiera as a gem.", "created": "2014-06-20T00:34:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Just starting to verify specs, but we've got an issue right out of the gate with running specs against the master branch (PR 197) thanks to {{spec_helper}} wanting to {{require 'win32console'}}\n\n", "created": "2014-06-23T06:49:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "PR has been sent against your branch for the master PR #197:\nhttps://github.com/joshcooper/hiera/pull/1\n\n\nI know that you mention here that Hiera needs FFI and Hiera doesn't need to know that.\n\nHowever, I wonder if it makes sense to keep FFI in there for now, and to create a new ticket which uses an FFI based Win32 call to replace this chunk of Hiera code:\n\nhttps://github.com/puppetlabs/hiera/blob/master/install.rb#L153\n\n{code}\nconfigdir = File.join(Dir::COMMON_APPDATA, \"PuppetLabs\", \"hiera\", \"etc\")\n{code}\n\n\nhttps://github.com/puppetlabs/hiera/blob/7e8cb42897b8a848d43ef6249b589831775ff6c4/lib/hiera/util.rb#L42-L44\n\n{code}\ndef common_appdata\n  Dir::COMMON_APPDATA\nend\n{code}\n\nOr are we concerned that {{win32-dir}} is now always expected to be a part of Hiera and therefore might break 3rd parties relying on it?", "created": "2014-06-23T06:59:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Original {{Gemfile.lock}} for Ruby 1.9.3 x86 after updating PR #197 against master branch\n\n{code}\nPATH\n  remote: .\n  specs:\n    hiera (1.3.4)\n      json_pure\n\nGEM\n  remote: https://rubygems.org/\n  specs:\n    builder (3.2.2)\n    diff-lcs (1.1.3)\n    ffi (1.9.3-x86-mingw32)\n    json_pure (1.8.1)\n    metaclass (0.0.4)\n    mocha (0.10.5)\n      metaclass (~> 0.0.1)\n    rake (10.1.1)\n    rspec (2.11.0)\n      rspec-core (~> 2.11.0)\n      rspec-expectations (~> 2.11.0)\n      rspec-mocks (~> 2.11.0)\n    rspec-core (2.11.1)\n    rspec-expectations (2.11.3)\n      diff-lcs (~> 1.1.3)\n    rspec-mocks (2.11.3)\n    watchr (0.7)\n    win32-dir (0.4.8)\n      ffi (>= 1.0.0)\n    win32console (1.3.2-x86-mingw32)\n    yarjuf (1.0.5)\n      builder\n      rspec (>= 2.0)\n\nPLATFORMS\n  x86-mingw32\n\nDEPENDENCIES\n  ffi (= 1.9.3)\n  hiera!\n  json (~> 1.7)\n  mocha (~> 0.10.5)\n  rake (~> 10.1.0)\n  rspec (~> 2.11.0)\n  watchr\n  win32-dir (~> 0.4.8)\n  win32console (= 1.3.2)\n  yarjuf (~> 1.0)\n{code}", "created": "2014-06-23T07:08:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "{{Gemfile.lock}} for Ruby {{ruby 2.0.0p481 (2014-05-08) [x64-mingw32]}} after updating PR #197 against master branch\n\n\n{code}\nPATH\n  remote: .\n  specs:\n    hiera (1.3.4)\n      json_pure\n\nGEM\n  remote: https://rubygems.org/\n  specs:\n    builder (3.2.2)\n    diff-lcs (1.1.3)\n    ffi (1.9.3-x64-mingw32)\n    json_pure (1.8.1)\n    metaclass (0.0.4)\n    mocha (0.10.5)\n      metaclass (~> 0.0.1)\n    rake (10.1.1)\n    rspec (2.11.0)\n      rspec-core (~> 2.11.0)\n      rspec-expectations (~> 2.11.0)\n      rspec-mocks (~> 2.11.0)\n    rspec-core (2.11.1)\n    rspec-expectations (2.11.3)\n      diff-lcs (~> 1.1.3)\n    rspec-mocks (2.11.3)\n    watchr (0.7)\n    win32-dir (0.4.8)\n      ffi (>= 1.0.0)\n    win32console (1.3.2)\n    yarjuf (1.0.5)\n      builder\n      rspec (>= 2.0)\n\nPLATFORMS\n  x64-mingw32\n\nDEPENDENCIES\n  ffi (= 1.9.3)\n  hiera!\n  json (~> 1.7)\n  mocha (~> 0.10.5)\n  rake (~> 10.1.0)\n  rspec (~> 2.11.0)\n  watchr\n  win32-dir (~> 0.4.8)\n  win32console (= 1.3.2)\n  yarjuf (~> 1.0)\n{code}", "created": "2014-06-23T07:36:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "I believe the {{Gemfile.lock}} diff is as expected (after updating PR #197 against master branch)\n\n{code}\n--- from_file \n+++ PATH \n@@ -9,7 +9,7 @@\n   specs:\n     builder (3.2.2)\n     diff-lcs (1.1.3)\n-    ffi (1.9.3-x64-mingw32)\n+    ffi (1.9.3-x86-mingw32)\n     json_pure (1.8.1)\n     metaclass (0.0.4)\n     mocha (0.10.5)\n@@ -26,13 +26,13 @@\n     watchr (0.7)\n     win32-dir (0.4.8)\n       ffi (>= 1.0.0)\n-    win32console (1.3.2)\n+    win32console (1.3.2-x86-mingw32)\n     yarjuf (1.0.5)\n       builder\n       rspec (>= 2.0)\n \n PLATFORMS\n-  x64-mingw32\n+  x86-mingw32\n \n DEPENDENCIES\n   ffi (= 1.9.3)\n{code}", "created": "2014-06-23T07:38:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Diff for {{Gemfile.lock}} against stable PR #196, which works as-is\n\n{code}\n--- from_file \n+++ PATH \n@@ -9,7 +9,7 @@\n   specs:\n     builder (3.2.2)\n     diff-lcs (1.1.3)\n-    ffi (1.9.3-x86-mingw32)\n+    ffi (1.9.3-x64-mingw32)\n     json_pure (1.8.1)\n     metaclass (0.0.4)\n     mocha (0.10.5)\n@@ -31,7 +31,7 @@\n       rspec (>= 2.0)\n \n PLATFORMS\n-  x86-mingw32\n+  x64-mingw32\n \n DEPENDENCIES\n   hiera!\n{code}\n\nI will merge that PR since it's good to go... ", "created": "2014-06-23T08:02:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "PR #196 merged to stable in https://github.com/puppetlabs/hiera/commit/b337b670fd4b5fd5af7f926315089dee3f62084f", "created": "2014-06-23T08:04:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Also, looks like we have to live with the {{DL is deprecated, please use Fiddle}} on the Ruby 2 / Windows combo.\nhttp://stackoverflow.com/questions/15590450/ruby-2-0-0p0-irb-error-dl-is-deprecated-please-use-fiddle", "created": "2014-06-23T08:12:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "I updated the PR to the PR... to only install {{win32console}} on x86\n\nNew diff for {{Gemfile.lock}}\n\n{code}\n--- from_file \n+++ PATH \n@@ -9,7 +9,7 @@\n   specs:\n     builder (3.2.2)\n     diff-lcs (1.1.3)\n-    ffi (1.9.3-x86-mingw32)\n+    ffi (1.9.3-x64-mingw32)\n     json_pure (1.8.1)\n     metaclass (0.0.4)\n     mocha (0.10.5)\n@@ -26,13 +26,12 @@\n     watchr (0.7)\n     win32-dir (0.4.8)\n       ffi (>= 1.0.0)\n-    win32console (1.3.2-x86-mingw32)\n     yarjuf (1.0.5)\n       builder\n       rspec (>= 2.0)\n \n PLATFORMS\n-  x86-mingw32\n+  x64-mingw32\n \n DEPENDENCIES\n   hiera!\n{code}", "created": "2014-06-23T09:00:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Merged to master in https://github.com/puppetlabs/hiera/commit/67c507cd65dcce3bc33b5f75b3aad6f9eb9fd609", "created": "2014-06-23T09:11:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "hiera/stable ext/project_data.yaml is missing windows dependencies. It should depend on win32-dir for both x86 and x64, and win32console for x86 only.", "created": "2014-06-23T09:55:00.000000"}, {"author": "557058:263afade-3e4f-46c6-b50a-cf2982192562", "body": "Fixes gem building", "created": "2014-06-23T12:46:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Fix for gem packaging merged into stable in [2c3bced9|https://github.com/puppetlabs/hiera/commit/2c3bced9d3d177f18a34a8ede54a82c945ebe442]", "created": "2014-06-23T13:21:00.000000"}], "components": [], "created": "2014-06-13T15:46:00.000000", "creator": "557058:91233464-4152-4228-81dd-172d43a52a03", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@39bbedd9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuldb:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_80419183_*|*_null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_4827_*|*_10007_*:*_2_*:*_284846882_*|*_3_*:*_2_*:*_18900092_*|*_5_*:*_1_*:*_23701548091_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_549305253"}], "description": "Hiera expresses Windows gem dependencies (in master branch only, but not yet released) but it only applies to ruby x86. When running on x64, the gem dependencies do not apply, so you can't use bundler to install gems, and run specs.\n\nCurrently, hiera's Gemfile uses the bundler `mingw` platform identifier, effectively:\n\n{noformat}\nplatform :mingw do\n  gem 'ffi'\n  ...\nend\n{noformat}\n\n{{Bundler::Dependency::PLATFORM_MAP}} maps that to the rubygems platform {{MINGW}}:\n\n{noformat}\n      :mingw    => Gem::Platform::MINGW,\n{noformat}\n\nWhen run on ruby 1.9.3 x86, the {{MINGW}} gem platform is a match:\n\n{noformat}\nirb(main):010:0> Gem::Platform.local.to_s\n=> \"x86-mingw32\"\nirb(main):011:0> Gem::Platform.match(Gem::Platform::MINGW)\n=> true\n{noformat}\n\nBut on ruby 2 x64, it is not:\n\n{noformat}\nirb(main):011:0> Gem::Platform.local.to_s\n=> \"x64-mingw32\"\nirb(main):012:0> Gem::Platform.match(Gem::Platform::MINGW)\n=> false\n{noformat}\n\nAs a result, dependencies that are currently expressed for x86-mingw, do not apply when run on ruby 2 x64.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54001", "fixedVersions": ["HI 2.0.0"], "id": "54001", "issueType": "Bug", "key": "HI-273", "labels": ["windows"], "originalEstimate": "PT0S", "parent": "26013", "parentSummary": "Support ruby 2.0 x64 on windows", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:91233464-4152-4228-81dd-172d43a52a03", "resolution": "Fixed", "resolutionDate": "2014-06-24T11:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Support Bundler workflow on x64", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:41a1dd4b-4565-429b-8504-c81f2162d552", "body": "Ping [~accountid:70121:daea3119-cdf4-43ae-bb73-2d9ef9d71335]. This is exactly what I meant at PuppetCamp Tokyo when I was trying to convince you that Roles (as opposed to Profiles) are configuration data (collections of profiles and parameters) and as such would be a great match for storing in Hiera.", "created": "2014-05-26T00:54:00.000000"}, {"author": "623c17d5a9575800695ad0ae", "body": "As commented through the twitter thread already working on getting our quick code out to git or likewise.\nIt's based on pushing (makeshift) array data to hiera and have hiera sift through (again in hiera and/or hiera_hash/hiera_array capability) a dynamic set of yamls (we went for the easy ones first).\n\nWill update once we have the code out", "created": "2014-05-26T03:02:00.000000"}, {"author": "70121:59c54d3b-1132-4180-b6f5-f673c4903d3d", "body": "Hey guys,\n\nthanks for commenting on this request.\n\nSince I needed this very urgently, I implemented it for myself.\n\nI've actually opened a pull request for this on Sat, https://github.com/puppetlabs/hiera/pull/193. In reality, the pull request was really to discuss the change.\n\nLook forward to have this feature implemented in Hiera soon!", "created": "2014-05-26T11:52:00.000000"}, {"author": "623c17d5a9575800695ad0ae", "body": "I think we looked at interpolate code but in the end we solved it differently - still trying to have our sample code up tomorrowish", "created": "2014-05-26T11:57:00.000000"}, {"author": "557058:41a1dd4b-4565-429b-8504-c81f2162d552", "body": "https://github.com/puppetlabs/hiera/pull/48\n\nHere's an older PR. Just adding for reference.", "created": "2014-05-26T18:36:00.000000"}, {"author": "557058:41a1dd4b-4565-429b-8504-c81f2162d552", "body": "..and another github project trying to achieve the same: https://github.com/neillturner/puppet_roles_hiera_parameters\n\n..and a thread on puppet-users where instead a function was created to insert layers on top of the Hiera hierarchy dynamically: https://groups.google.com/d/msg/puppet-users/_E2wm1XCm60/44987rydrx8J", "created": "2014-05-26T22:01:00.000000"}, {"author": "623c17d5a9575800695ad0ae", "body": "Added our thoughts, idea and q&d code on https://github.com/deltaforge/puppet-hiera-roles\n\nNote that we didn't change core-code but added an extended version of an existing hiera-backend", "created": "2014-05-27T00:40:00.000000"}, {"author": "557058:08ec3550-7c5e-43a5-9322-7aa9490bbf44", "body": "Hello,\n\nI've been also requesting for this feature.\nWhile it still could be nice, there is a simple thing you can do to achieve the same behavior without any patch.\n\nLet's say you have a hiera file for your node :\nmynode.yaml\n\nroles:\n -roles/role1.yaml\n -roles/role2.yaml\n\nYou can have in your site.pp\n\n$roles=hiera_array(\"roles\")\nhiera_include(\"classes\",\"\",$roles)\n\nThe trick here is simply to use the (not well) documented hook for hiera_include. It just add any file you want at the beginning of the hierarchy.", "created": "2014-05-27T02:15:00.000000"}, {"author": "623c17d5a9575800695ad0ae", "body": "That works fine to some extend, depends on what you want. This wouldn't neccesarily work for us though. Depends on your hierarchy demands.\nQuestion is if 'roles' are what you want at the beginning of the hierarchy (we didn't).\nWe wanted abstraction on\n+ fqdn/clientcert (by us)\n+ roles (multiple!) (by us)\n+ common (by us)\n+ generic standards (platform)\n+ multiple customer/thirdparty (in respective hierarchy order, by themselves)\n\nAs indicated we didn't patch - just used the each() and an additional backend based on the original.", "created": "2014-05-27T02:22:00.000000"}, {"author": "557058:08ec3550-7c5e-43a5-9322-7aa9490bbf44", "body": "You are right, the difference between the feature requested and the trick is the hooks order.\nThe trick should work in many cases (it did for me to implement multiple roles), but won't cover all cases. I just wanted to point it out.\n\nI still vote for the feature request so people are free to have the behavior they want.", "created": "2014-05-27T03:00:00.000000"}, {"author": "557058:41a1dd4b-4565-429b-8504-c81f2162d552", "body": "> The trick should work in many cases\n\nIt'll only allow for classes to be pulled in and won't pickup any class parameters in the hierarchy layers you've assigned to the override parameter in the hiera*(). So the only use case is for 'roles' that consist of only collections or classes, without parameters - very limited indeed.", "created": "2014-05-28T20:43:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "I've closed down the second pull request. I don't think that adding this functionality to directly into hiera is the right way to go. Instead of trying to get the basic hiera to work in this manner, where I can see all sorts of requests for configurability and tweaking coming out of it, I think that a better approach is to either extend hiera using the current extension mechanism (backends) or modify hiera to allow plugins that can determine the hierarchy. The latter way seems like it would more directly address people being able to create whatever hierarchies that they need.", "created": "2014-07-18T14:22:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "I'm closing this down since I don't foresee taking this change. I've opened up HI-280 for my suggestion of making the hierarchy system pluggable.", "created": "2014-07-18T14:29:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] this is the feature discussed at contributor summit, I suspect with the new code base we're in a better position to reconsider the feasibility of including this? Good history on the PR https://github.com/puppetlabs/hiera/pull/193", "created": "2017-02-09T01:20:00.000000"}], "components": ["Community"], "created": "2014-05-23T04:25:00.000000", "creator": "70121:59c54d3b-1132-4180-b6f5-f673c4903d3d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@405b17e1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuch3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4874631277_*|*_6_*:*_1_*:*_0"}], "description": "Take the following hierarchy example:\n\n- hiera/%{::variable}/common\n\nlet's say $variable is an array: $variable = [\"a\", \"b\", \"c\"]\n\nHiera understands that $variable is an array and it would then build an hierarchy as follows:\n\n- hiera/a/common\n- hiera/b/common\n- hiera/c/common\n\nBoth these examples find real work scenarios. Let's say a machine as a number of roles (webserver, dns server etc.). One could have an array containing each role and build the hierarchy based on that. Extremely powerful.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53562", "fixedVersions": [], "id": "53562", "issueType": "New Feature", "key": "HI-257", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:59c54d3b-1132-4180-b6f5-f673c4903d3d", "resolution": "Won't Fix", "resolutionDate": "2014-07-18T14:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Dynamic hierarchy based on fact/variable", "timeSpent": "PT0S", "updated": "2017-02-10T15:17:00.000000", "votes": "4", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1dfe4b63"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu80n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_610025189_*|*_5_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nNOTE: This link may not work properly for RC releases. Edit it to remove the \"-rc#\".\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.3.3%22%20AND%20status%20%3D%20Resolved\n\nThere is a bulk edit at the top (a gear with the word \"Tools\"). Should you decide to take this route:\n  * Select Bulk Change - All # issues\n  * Step 1 - choose all relevant issues (likely all of them)\n  * Step 2 - Select \"Transition Issues\"\n  * Step 3 - Select \"Closed\"\n  * Step 4 - Select \"Fixed\" in Change Resolution.\n  * View what is about to change and confirm it. Then commit the change.\n\nDependencies:\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53952", "fixedVersions": [], "id": "53952", "issueType": "Sub-task", "key": "HI-256", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-23T14:09:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2014-05-23T14:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I have seen the announcement, so I am marking this as resolved.", "created": "2014-05-23T14:20:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:31:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@739d9d9e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu80f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_610056950_*|*_5_*:*_2_*:*_872470358_*|*_6_*:*_1_*:*_0"}], "description": "  * Update the release google document (ask around for location).\n  * Send the drafted release notes email.\n    * If final send to puppet-announce and specific distribution lists (e.g. puppet to puppet-users & puppet-dev).\n    * If RC only send to the specific distribution lists.\n  * Make a PSA on IRC letting those kiddos know about the new release.\n    * Something along the lines of \"PSA: facter 1.7.3-rc1 now available\"\n\nDependencies:\n  * Prepare long form release notes and short form release story\n  * Packages pushed\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53781", "fixedVersions": [], "id": "53781", "issueType": "Sub-task", "key": "HI-255", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-23T14:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2014-06-02T16:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "is there anything left to do on this? Please mark as resolved if not.", "created": "2014-05-23T14:20:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6715c316"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu807:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_619194092_*|*_6_*:*_1_*:*_0"}], "description": "Push the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53776", "fixedVersions": [], "id": "53776", "issueType": "Sub-task", "key": "HI-254", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-23T16:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2014-05-23T16:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:31:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@148d8dd7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7zz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_535989655_*|*_5_*:*_1_*:*_946530692_*|*_6_*:*_1_*:*_0"}], "description": "Update downloads page\n  * Update misc/download-options to reflect the new builds you just pushed and also make sure they're displayed. It's a good idea to make sure this looks like it's supposed to\n\nNOTE: this page will hopefully be deprecated soon. The idea is that docs with update their documentation to include \"latest release version\" and where to download files. This page will then be changed to redirect to docs.puppetlabs.com and will no longer need updating.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53736", "fixedVersions": [], "id": "53736", "issueType": "Sub-task", "key": "HI-253", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-22T17:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update the downloads page", "timeSpent": "PT0S", "updated": "2014-06-02T16:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "We're having issues with createrepo for el7 x86_64 metadata creation. Working on a solution now. Everything else is live and happy.", "created": "2014-05-22T18:18:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "fixed!", "created": "2014-05-22T18:27:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:30:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7977956c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7zr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_535626590_*|*_3_*:*_1_*:*_3503806_*|*_5_*:*_1_*:*_943381671_*|*_6_*:*_1_*:*_0"}], "description": "Push packages\n  * run `rake pl:jenkins:uber_ship`\n    * You will need the keys to the castle (aka the passphrase) for this to work.\n    * Don't forget to make sure everything looks like it's in the correct folder, the pkgs dir has been cleared out, and that you are shipping for all expected platforms.\n    * Get a *second set of RelEng eyes* on the packages that are about to be shipped to make sure everything looks a-okay.\n    * If you're shipping a gem you need to make sure you have a rubygems account, are an owner of that project, and have a gem config file.\n    * If you're shipping puppet you need to sign the MSI file for Windows. This is a manual process and the ship task doesn't ship or build the msi so talk to Moses or [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e] for more details. This file also needs to be manually signed.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53656", "fixedVersions": [], "id": "53656", "issueType": "Sub-task", "key": "HI-252", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-22T18:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2014-06-02T16:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "tag pushed early so that we can include Hiera 1.3.3 in the Puppet 3.6.1 msi package", "created": "2014-05-22T15:27:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:30:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@878a602"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7zj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_528251386_*|*_5_*:*_1_*:*_954243760_*|*_6_*:*_1_*:*_0"}], "description": "The development team is responsible for updating the stable/master branches as necessary.\nThis will be done after the version bump in version.rb.\n\nDependencies:\n  * Go / No Go meeting (except where it's required to push the tag to build packages - MSIs)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53561", "fixedVersions": [], "id": "53561", "issueType": "Sub-task", "key": "HI-251", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-22T15:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2014-06-02T16:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "This was released so I assume there were 'Go' calls made. Can the names be provided so this can be closed?", "created": "2014-06-02T16:32:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@30b3e427"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7zb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_535578697_*|*_5_*:*_1_*:*_0"}], "description": "Get a yes/no for the release from dev, docs, product, qa, releng.\n\nThis meeting is informal, over chat, and usually happens right before packages are pushed.\nKeep in mind we typically do not ship releases in the evening and we don't ship on Friday if the release is a final release.\n\nDependencies:\n  * Smoke testing\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53591", "fixedVersions": [], "id": "53591", "issueType": "Sub-task", "key": "HI-250", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-22T17:28:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting", "timeSpent": "PT0S", "updated": "2014-06-02T16:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Packages: http://builds.puppetlabs.lan/hiera/1.3.3/", "created": "2014-05-22T11:34:00.000000"}, {"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "--Testing on rhel7--\nChecked yaml and json backends, basic overriding from the hierarchy, interpolation.", "created": "2014-05-22T14:58:00.000000"}, {"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "--Testing rhel6-- passed", "created": "2014-05-22T15:29:00.000000"}, {"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "--Testing Debian7-- passed", "created": "2014-05-22T16:15:00.000000"}, {"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "Eric tested and passed rhel5", "created": "2014-05-22T16:16:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:30:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ebc9a40"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7z3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_514320551_*|*_3_*:*_1_*:*_20324347_*|*_5_*:*_1_*:*_947094362_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_729782"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.\n\nIn general this should happen on a variety of platforms, i.e. one or two each of kind of package we create (i.e., gem, dmg, msi, deb, rpm, etc).\nIf this is a final release then the previous RC (which should be identical to what is currently being released) will have gone through this testing. Lighter testing is acceptable.\n\n  * Add a link to the Packages repository that you receive from the \"Tag and create packages\" subtask\n  * Ping folks on your team for help with different platforms.\n  * When you pick up a platform, please leave a comment below that you are testing it. When it looks good, leave another comment, preferably with a code snippet showing the commands executed and their output.\n  * When all platforms picked have been smoke tested, move this ticket to done.\n\nExample:\nSmoke test platforms:\n  * pick some platforms such as\n  * RHEL 5/6/7\n  * CentOS 5/6\n  * Windows 2003/2008/2012\n  * Debian 6/7/\n  * Ubuntu 10.04/12.04/14.04\n\nSmoke test procedure:\n  * Start/stop/restart a master with the init scripts (on Debian try the passenger master)\n  * Start/stop/restart an agent\n  * Help/man\n  * Write and run some manifests\n\nDependencies:\n  * Tag and create packages\n  * For Windows MSIs - Push tag\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54055", "fixedVersions": [], "id": "54055", "issueType": "Sub-task", "key": "HI-249", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-22T17:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2014-06-02T16:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://builds.puppetlabs.lan/hiera/1.3.3/", "created": "2014-05-22T11:33:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:29:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@20ece7ba"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7yv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_513629399_*|*_3_*:*_1_*:*_670238_*|*_5_*:*_1_*:*_968157443_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] - Please add the SHA as a comment (this should be the commit which contains the newly updated version.rb)\n  * checkout the sha\n    * NOTE: If this is a final release, make sure you're releasing only the code that already went through rc, so don't let any new code get into the final release\n    * Make sure you are about to tag the correct thing\n  * Create the tag e.g.) git tag -s -u {GPG key} -m \"1.7.3-rc1\" 1.7.3-rc1\n    * You need to know the pass phrase for this to complete successfully. It's important that we make sure all releases are signed to verify authenticity.\n    * DO NOT push the tag to the repo, keep it local only\n  * `git describe` will show you the tag. Make sure you're building what you think you're building.\n  * Make sure you look over the code that has changed since the previous release so we know what's going out the door.\n  * run `rake package:implode package:bootstrap pl:jenkins:uber_build` when you've verified what version you're building (this uses the latest version of the packaging repo to build the packages).\n  * If this is a puppet release, you have to build the windows msi. This is done using jenkins jobs on jenkins-legacy. You have to make sure you're targeting the correct versions of hiera, facter and puppet.\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] please add a comment with location of packages.\n\nFor puppet, don't forget the msi packages. This usually comes after other smoke testing is going well since it does require the tag to be pushed live.\n\nDependencies:\n  * Every ticket before this except for release notes.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53999", "fixedVersions": [], "id": "53999", "issueType": "Sub-task", "key": "HI-248", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-22T11:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2014-06-02T16:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "body": "The release notes are done and ready to merge.\n\nThe release story should be:\nReleased on May 22, 2014.\n\nHiera 1.3.3 is a backward-compatible performance and fixes release in the 1.3 series. It provides a substantial speed increase for lookups compared to Hiera 1.3.2. This release also adds support for Ubuntu 14.04 (Trusty Tahr) and discontinues support for Fedora 18 and Ubuntu 12.04 (Raring Ringtail).", "created": "2014-05-22T11:24:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:0e68498a-af24-40c4-a3ec-8d424adeeabb] this is not an RC.", "created": "2014-05-22T15:02:00.000000"}, {"author": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "body": "That's good to know! Thanks, I'll take that part out.", "created": "2014-05-22T15:03:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Hiera 1.3.3 is a backward-compatible performance and fixes release in the 1.3 series. It provides a substantial speed increase for lookups compared to Hiera 1.3.2. This release also adds support for Ubuntu 14.04 (Trusty Tahr) and discontinues support for Fedora 18 and Ubuntu 12.04 (Raring Ringtail).\n\nShout-out to Sean Millichamp for the original patch providing the performance boost!\n\nPlease read through the Release Notes for the full list of changes: http://docs.puppetlabs.com/hiera/1/release_notes.html#hiera-133\nTo install Hiera, follow the installation guide: http://docs.puppetlabs.com/hiera/1/installing.html\nTo report issues with the release, file a ticket in the \"HI\" project on http://tickets.puppetlabs.com/ and set the \"Affects version/s\" field to \"1.3.3\"\n\nEric Sorenson - eric.sorenson@puppetlabs.com - freenode #puppet: eric0\npuppet platform // coffee // techno // bicycles\n", "created": "2014-05-22T21:02:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Sent.", "created": "2014-05-22T21:18:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7e4be56c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7yn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_514335160_*|*_10007_*:*_1_*:*_35027029_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_21341"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Is there a JIRA ticket targeted at the release for every commit?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53904", "fixedVersions": [], "id": "53904", "issueType": "Sub-task", "key": "HI-247", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-22T21:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2014-05-22T21:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@25d9f593"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7yf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_448683700_*|*_5_*:*_1_*:*_0"}], "description": "This happens on Jira - there needs to be a version we can target future issues or issues that didn't make it into the current release.\n  * e.g. if we're releasing Facter 1.7.4, make sure there's a 1.7.5 version (or at least 1.7.x if there's isn't another bug release planned for the near future)\n  * If releasing an RC, ensure you create the RC version e.g 3.6.0 RC (leave RC number off of here).\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53963", "fixedVersions": [], "id": "53963", "issueType": "Sub-task", "key": "HI-246", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-21T17:20:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is a new version created in Jira for the next version in the series?", "timeSpent": "PT0S", "updated": "2014-05-21T17:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I can not merge stable to master since there is a conflict in build_defaults.yaml that I have no clue how to resolve.\n", "created": "2014-05-21T17:36:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] here's the conflict [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] is referring to:\n\n{code}\n<<<<<<< HEAD\ncows: 'base-lucid-i386.cow base-precise-i386.cow base-quantal-i386.cow base-raring-i386.cow base-saucy-i386.cow base-sid-i386.cow base-squeeze-i386.cow base-stable-i386.cow base-testing-i386.cow base-trusty-i386.cow base-unstable-i386.cow base-wheezy-i386.cow'\n=======\ncows: 'base-lucid-i386.cow base-precise-i386.cow base-quantal-i386.cow base-sid-i386.cow base-squeeze-i386.cow base-stable-i386.cow base-testing-i386.cow base-trusty-i386.cow base-unstable-i386.cow base-wheezy-i386.cow base-saucy-i386.cow'\n>>>>>>> origin/stable\n{code}\n\nCan you advise?\n\nLooks like there have been commits to both stable and master for the cows list, e.g. somehow saucy is in the middle of master's list but at the end of stable's list. If possible, going forward we should probably just target stable and then merge up.", "created": "2014-05-21T17:49:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e] helped me resolve the issue\n\n(would help if array entries in yaml files were kept on their own lines to reduce the number of conflicts and\nmake it possible to compare what has actually changed).", "created": "2014-05-21T17:50:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:27:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7f005761"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7y7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_450515449_*|*_5_*:*_1_*:*_1031815988_*|*_6_*:*_1_*:*_0"}], "description": "For some releases, the code base will need to be merged down to stable.\n\n*NOTE:* This is usually only during a z-rc1 release, but even then it may have already been done. If it doesn't apply, close this ticket.\n\n\nAssuming you have origin (your remote) and upstream (puppetlabs remote), the commands will look something like this:\n{noformat}\ngit fetch upstream\ngit rebase upstream/master\n\ngit checkout stable\ngit rebase upstream/stable\n\ngit merge master --no-ff --log\n{noformat}\n\nOnce that looks good:\n{noformat}\ngit push origin\ngit push upstream\n{noformat}\n\nAfter merging to stable, the jobs on jenkins may require updates (spec, acceptance, etc) when you merge master into stable. Please ensure that the jenkins jobs are updated if necessary.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53780", "fixedVersions": [], "id": "53780", "issueType": "Sub-task", "key": "HI-245", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-21T17:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2014-06-02T16:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Version updated to 1.3.3 in SHA 826409ee7b26434308739c3a70df1b8a6083efe2", "created": "2014-05-21T17:27:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Change pushed to stable", "created": "2014-05-21T17:33:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Don't know the next step here... assigning to Kylo", "created": "2014-05-21T17:37:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "oh, must be for Melissa since she is assigned to do the tagging.", "created": "2014-05-21T17:44:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] the SHA for 1.3.3 is in Henrik's comment above.", "created": "2014-05-21T17:45:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:26:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@43846c83"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7xz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_450548933_*|*_5_*:*_1_*:*_1031743006_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/{#project}/version.rb to correct version.\n\n  * Commit the updated version file.\n    * e.g) commit -m \"(packaging) Update FACTERVERSION to 1.7.3-rc1\".\n  * If any merging needs to happen (i.e. master into stable/stable into master), it can now happen (different subtask).\n  * Once this is done, hand the SHA to be built to RelEng to be tagged.\n\nDependencies:\n  * Is the code ready for release?\n  * Is there a commit for every JIRA ticket targeted at the release?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53775", "fixedVersions": [], "id": "53775", "issueType": "Sub-task", "key": "HI-244", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-21T17:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2014-06-02T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "the log of commits between 1.3.2 and stable head is:\n{code}\n7b4819f (packaging) Add Trusty cow to stable branch\n37bb93b (#22142) Extract method to list all hierarchy files\n505ae05 (#22142) Substantial speed increase in lookups\ne11d425 (HI-236) Raring went EOL in Jan 2014, so we should no longer build packages for it.\nb196dbe (HI-232) Hiera should replace ruby-hiera\n7752c8a (maint) Pin rake for acceptance to the last 1.8 compatible version\n7769914 (maint) Pin rake to the last 1.8 compatible version\nfa12083 (hi-149)(packaging) Remove Fedora 18 from the default package builds\n{code}\n\n#22142 is HI-239, and the  7b4819f is HI-185 (or so I think", "created": "2014-05-21T17:10:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:26:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@b5a340d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7xr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_448099447_*|*_5_*:*_1_*:*_1034150999_*|*_6_*:*_1_*:*_0"}], "description": "Ensure all tickets targeted at the release have a corresponding commit\n  * git log <old tag>..<new tag>\n  * This time, look through tickets targeted at this release in JIRA, and compare it to the commit log, looking for the corresponding numbers\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53735", "fixedVersions": [], "id": "53735", "issueType": "Sub-task", "key": "HI-243", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-21T17:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2014-06-02T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:25:00.000000"}], "components": [], "created": "2014-05-16T12:42:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@14ddb218"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7xj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_448127737_*|*_5_*:*_1_*:*_1034104764_*|*_6_*:*_1_*:*_0"}], "description": "Ensure all tickets referenced in the commit log have a bug targeted at the release\n\n  * git log <old tag>..<new tag>\n  * look through, and make sure that if there is a JIRA ticket number referenced in any of the commits, that ticket is targeted at the release\n  * Also, make sure the code itself is sane, that you understand why the change was made, etc. etc.\n  * [ticketmatch.rb script|https://gist.github.com/hlindberg/9520023] is a ruby script that helps with \"Is there a JIRA ticket targeted at the release for every commit?\" and \"Is there a commit for every JIRA ticket targeted at the release?\" (it beats doing it manually, but requires manual steps and hacking the script for the specific release)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53655", "fixedVersions": [], "id": "53655", "issueType": "Sub-task", "key": "HI-242", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-21T17:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2014-06-02T16:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "HI acceptance stable is red on solaris for what seems to be the the latest packaging change 7b4819f merged 60ad70a", "created": "2014-05-21T17:18:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "new run succeeded", "created": "2014-05-21T17:23:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:25:00.000000"}], "components": [], "created": "2014-05-16T12:41:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3588ced9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu7xb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_448890270_*|*_5_*:*_1_*:*_1033336602_*|*_6_*:*_1_*:*_0"}], "description": "All tests (spec, acceptance) should be passing on all platforms for both stable & master.\n\n  * If a new platform has been added, make sure that platform has acceptance testing, new features have decent coverage, etc. etc.\n  * If the release is going to be cut from a sha, rather than the head of a branch, make sure that sha specifically has gone through spec/acceptance/etc. tests\n  * Move all items that should be moved from Ready for CI to Ready for Review\n\nHave all tickets been resolved (passed Functional Review)? If not please add any missing tickets to the current sprint's board.\n\nNOTE: This link may not work properly for RC releases. Edit it to remove the \"-rc#\".\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20HI%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.3.3%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53560", "fixedVersions": [], "id": "53560", "issueType": "Sub-task", "key": "HI-241", "labels": [], "originalEstimate": "PT0S", "parent": "53590", "parentSummary": "Hiera 1.3.3 2014-05-23 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-21T17:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2014-06-02T16:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0cbf1c7f6a007049e5b9", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Release completed!", "created": "2014-05-22T21:18:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:47:00.000000"}], "components": [], "created": "2014-05-16T12:41:00.000000", "creator": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@169c58c4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq22v:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_28837_*|*_3_*:*_1_*:*_16908920_*|*_5_*:*_2_*:*_932807133_*|*_6_*:*_1_*:*_174421_*|*_10006_*:*_1_*:*_532472537"}], "description": "Hiera 1.3.3 2014-05-23 Release\n\nWhen working through this ticket, add it to the board and then keep it in the Ready for Engineering column.\nMove the subtasks to In Progress when you are working on them and Resolved when you have completed them.\nIn general subtasks should only be moved to Ready for Engineering when they are ready to be worked on. For some assignees this is their cue to start working on release-related items.\n\n * The first set of tickets are assigned to the developer, those can all be converted to Ready for Engineering and you can start working through them.\n * Only when those are done should you move the \"Prepare notes\" and \"Tag release/create packages\" tasks to Ready for Engineering. Ping those assigned to move forward.\n * When you hear back for \"Tag Release/create packages\", you should move \"Smoke test packages\" to Ready for Engineering or In Progress if you are ready.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53590", "fixedVersions": [], "id": "53590", "issueType": "Task", "key": "HI-240", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "resolution": "Fixed", "resolutionDate": "2014-05-22T21:18:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.3 2014-05-23 Release", "timeSpent": "PT0S", "updated": "2015-01-30T06:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Cherry picked the two mentioned changes. Made PR-191 for review.", "created": "2014-05-19T07:10:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Absent an adequate test script, resolving insofar as hiera continues to work and fetch data.", "created": "2014-05-19T12:55:00.000000"}], "components": [], "created": "2014-05-16T12:32:00.000000", "creator": "623a4c3b4a57610068e6782b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7379efd9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq593:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1704916_*|*_1_*:*_1_*:*_7327_*|*_10007_*:*_1_*:*_6901261_*|*_10009_*:*_1_*:*_12118763_*|*_5_*:*_1_*:*_349985418_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_239826129"}], "description": "The fix for [Redmine #22142|https://projects.puppetlabs.com/issues/22142] provided some good performance improvements. It has unfortunately been languishing on the master branch and waiting for a 1.4 release. In order to get it out sooner, we need to backport the changes from merge [7657d43a35|https://github.com/puppetlabs/hiera/commit/7657d43a35c32570862041713c17bc0e2039326f] to the stable branch (for 1.3.x).", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54054", "fixedVersions": ["HI 1.3.3"], "id": "54054", "issueType": "Task", "key": "HI-239", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4c3b4a57610068e6782b", "resolution": "Fixed", "resolutionDate": "2014-05-19T12:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Backport speed improvement to 1.3.x codebase", "timeSpent": "PT0S", "updated": "2014-05-23T14:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Vincent, can you provide some example output of your first and second run and what provides the $datacenter value? If datacenter is a custom fact, that should be present on the first run and may indicate a problem outside of hiera itself.", "created": "2014-12-04T15:56:00.000000"}], "components": [], "created": "2014-05-02T05:26:00.000000", "creator": "557058:08ec3550-7c5e-43a5-9322-7aa9490bbf44", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7602739c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytzqf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Dec/14"}], "description": "Suppose you have this hierarchy:\n{noformat}\nhiera.yaml\n:hierarchy:\n - \"nodes/%{::clientcert}\"\n - \"datacenters/%{datacenter}\"\n - common\n\ncommon.yaml:\nclasses:\n - datacenter\n\nnodes/testnode.yaml:\ndatacenter: mydatacenter\n\ndatacenters/mydatacenter.yaml:\nclasses:\n - ntp\n\nntp::servers:\n - myntpserver\n\nsite.pp that does hiera_include(\"classes\")\n\nclass \"datacenter\" do the following:\n$datacenter=hiera(\"datacenter\")\nhiera_include(\"classes\")\n{noformat}\n\nThis gives inconsistent behavior:\nFirst pass, \"\\%{datacenter}\" is not set, so nothing is done there. When \"common\" hierarchy is evaluated, Puppet processes \"datacenter\" class, get the value for \"$datacenter\" then do the hiera_include(). hiera_include() then get \"datacenters/mydatacenter.yaml\" classes, ie \"ntp\" but ntp settings are defaults, not those in file  \"datacenters/mydatacenter.yaml\"\n\nThat is to say : Puppet was able to get \\%{datacenter} variable dynamically, was able to instantiate the class \"ntp\" dynamically, but does not evaluate the variables dynamically.\n\nI don't want to declare \"datacenter\" class for every node (Puppet principle : don't repeat yourself). I want to declare datacenter class as a common rule that exports a \"\\%{datacenter}\" variable that allows me to include more hiera content dynamically, without having to push facts on the node that would require 2 passes of Puppet to achieve this.\n\nActually my workaround is declaring in site.pp:\n$datacenter=hiera(\"datacenter\", \"\")\nhiera_include(\"classes\")\n\nso \\%{datacenter} is set on first pass", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53734", "fixedVersions": [], "id": "53734", "issueType": "Bug", "key": "HI-237", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:08ec3550-7c5e-43a5-9322-7aa9490bbf44", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera behaviour with variables is inconsistent", "timeSpent": "PT0S", "updated": "2014-12-04T15:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Merged into stable in 72d7961.", "created": "2014-04-30T14:36:00.000000"}], "components": [], "created": "2014-04-22T16:22:00.000000", "creator": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@17cbdd7e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytu5b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_790395_*|*_10007_*:*_1_*:*_684085215_*|*_5_*:*_1_*:*_1985527052_*|*_6_*:*_1_*:*_0"}], "description": "Raring went EOL in January 2014, so we shouldn't be building packages for it anymore.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53733", "fixedVersions": ["HI 1.3.3"], "id": "53733", "issueType": "Task", "key": "HI-236", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "resolution": "Fixed", "resolutionDate": "2014-04-30T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Remove raring from build_defaults, it is EOL", "timeSpent": "PT0S", "updated": "2014-05-23T14:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a4bee866b810069e3689a", "body": "I can't find any kind of log either as to why that line is being ignored.", "created": "2014-04-15T05:06:00.000000"}, {"author": "623a4bee866b810069e3689a", "body": "Turns out someone had busted the symlink from /etc/puppet/hiera.yaml.", "created": "2014-04-16T07:22:00.000000"}], "components": [], "created": "2014-04-15T05:05:00.000000", "creator": "623a4bee866b810069e3689a", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@490cb1c7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytq53:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_94600842_*|*_6_*:*_1_*:*_0"}], "description": "My hiera.yaml looks like this:\n\n{noformat}\n---\n:hierarchy:\n  - \"business_unit/%{::business_unit}/node/%{::hostname}\"\n  - \"business_unit/%{::business_unit}/module/%{::module_name}\"\n  - \"business_unit/%{::business_unit}/common\"\n  - \"global/node/%{::hostname}\"\n  - \"global/role/%{calling_class}\"\n  - \"global/cluster/%{::cluster}\"\n  - \"global/datacenter/%{::datacenter}\"\n  - \"global/module/%{::module_name}\"\n  - global/users\n  - global/common\n\n:backends:\n  - yaml\n\n:yaml:\n  :datadir: /srv/puppet/hieradata\n{noformat}\n\nHowever, {{  - \"business_unit/%{::business_unit}/common\"}} is being ignored entirely by Hiera.\n\nI added a few {{Hiera.debug}} calls to {{backend.rb}} to show what hierarchy it is I end up with and I see this:\n{noformat}\nDebug: hiera(): Hierarchy is: [\"business_unit/%{business_unit}/node/%{hostname}\", \"business_unit/%{business_unit}/module/%{module_name}\", \"global/role/%{calling_class}\", \"global/node/%{hostname}\", \"global/cluster/%{cluster}\", \"global/datacenter/%{datacenter}\", \"global/module/%{module_name}\", \"global/users\", \"global/common\"]\n{noformat}\n\nAs you can see all the license are there except for the {{\"business_unit/%{::business_unit}/common\"}} line. I've rewritten that file a dozen times, changed line endings, with or without quotes and what not but for the life of me can't figure out what's going on.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53559", "fixedVersions": [], "id": "53559", "issueType": "Bug", "key": "HI-235", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4bee866b810069e3689a", "resolution": "Cannot Reproduce", "resolutionDate": "2014-04-16T07:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Line in hierarchy is being ignored", "timeSpent": "PT0S", "updated": "2015-01-22T17:11:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Do you have any ideas about how this could be done automatically ?\n(I can imagine it being done with one hiera function that is a lookup of a different kind than priority lookup). Anything besides that requires annotation at the point where the parameter is defined, and then you could just as well call hiera directly. ", "created": "2014-04-10T09:41:00.000000"}, {"author": "623d00fd562ab90069f93d7c", "body": "I don't know it. I'm not a programmer and I don't know puppet neither hiera code.\n\nBut I don't understand why it is possible a hiera() function that does merge array and hashes and automatic parameter lookup can't.", "created": "2014-04-11T00:00:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Something needs to specify how the lookup is supposed to be made - with priority, or some kind of merge. Since the lookup should take place when information is missing - it becomes a logical impossibility to specify at that point. Thus, it has to be specified inside hiera, which means you must have one key that is looked up with priority (the lookup for the missing parameter), and it, in turn in hiera must specify a merge lookup of some other key with the wanted merge semantics.\n\nHI-47 has a suggestion that this should be controlled per class. HI-183 also wants to be able to do recursive lookup.\n\nWhy not just simply call hiera to set the default value?", "created": "2014-04-11T07:11:00.000000"}, {"author": "623d00fd562ab90069f93d7c", "body": "Why not using the same behaviour than with hiera() functions? In that case, the merge_behaviour control how the merge has to be done.\n\nAnd calling hiera to set the default value is not an (desirable) option. You could that when programming your own module, but if you are using third party modules (like the ones from the forge) then you would have to programming your own modification.\n\nI think that if puppet offers the automatic parameter lookup for binding parameters to hiera lookups, these hiera lookups should be performed the same way that explicit hiera() functions", "created": "2014-04-14T00:18:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I am sorry, but that is just not possible - that would mean that all lookups would be merges. There is simply no way to control this except having two different keys and doing it inside hiera. (That is however also made very difficult to add due to recursive lookup being restricted to strings only).\n\nI am sorry, I can't explain the problem better, we seem to be talking past eachother. How do you propose that the system should differentiate between the different forms of lookup? Say a parameter $x for classes 'blue', and 'green' where you want to do a deep merge for green, but not for blue?\n\n{code}\nclass blue($x) { }\nclass green($x) { }\ninclude blue\ninclude green\n{code}\n\nWhere does the \"same behaviour than with hiera() function\" come into play here? (There is nowhere to specify the additional parameters).", "created": "2014-04-14T05:57:00.000000"}, {"author": "623d00fd562ab90069f93d7c", "body": "I have not explained well. I am not talking about merging the same parameter for different classes. I'll try to explain better...\n\nThis is my /etc/puppet/hiera.yaml hiera configuration file:\n\n{code:title=/etc/puppet/hiera.yaml}\n:hierarchy:\n  - \"%{::fqdn}\"\n  - common\n{code}\n\nIn common.yaml I have:\n\n{code:title=common.yaml}\n...\napache::default_mods:\n  - alias\n  - auth_basic\n  - authn_file\n  - authz_default\n  - <some more entries>\n...\n{code}\n\nin my %{::fqdn.yaml} I have:\n{code:title=fqdn.yaml}\napache::default_mods:\n  - cgi\n{code}\n\nIn my site.pp I have:\n\n{code:title=site.pp}\ninclude ::apache\n{code}\n\nWhat I would like is that default_mods parameter automatically binded in the include sentences was [  alias, auth_basic, authn_file, authz_default, <some more entries>, cgi ] and not just [ cgi ] as obtained with priority lookup.", "created": "2014-04-14T06:15:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "That was clear already. My question using two classes seems to have confused what I really asked. I used two classes where I should really have used only one, but at two different times. How do you expect to be able to control priority vs. merge lookup for a class. Today it is \"priority\" for all parameters. We can not simply change it to \"merge\" for all parameters - that would break everyone. We cannot change it to be \"merge\" for all parameters of a specific class either, since you may want to use \"priority\" for some, and \"merge\" for others.\n\nIn essence, you have to make those decisions explicitly in your logic - calling the hiera functions yourself, and then passing on the result as the values you want set. The alternative would, as I see it, be just as complicated to describe elsewhere (and those mechanisms does not exist today).", "created": "2014-04-15T07:59:00.000000"}, {"author": "623d00fd562ab90069f93d7c", "body": "I am aware that such a change could break thinks. But, how do you choose between priority or merge lookup in a hiera() function call? What is confusing to me is that everywhere you use hiera, a merge lookup is done except when binding to parameters.", "created": "2014-04-16T00:12:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The requested functionality is not easily achieved and would cause backwards incompatibilities if added in a simplistic fashion. \n\nI am closing this issue as \"Incomplete\" - a lot more work is needed to define how a working solution should be designed and implemented. Also, the community at large should weigh in if this is even a desired feature. ", "created": "2014-04-26T10:36:00.000000"}, {"author": "557058:f3848e45-d328-48b4-adf6-fdddf27e2348", "body": "Hi,\n\nI was just head scratching and getting grey hair, until I re-read the link mentioned in the initial report here, in order to figure out that there is only priority lookup in Puppet automatic Parameter lookup functionality.\n\nHowever, maybe an easy, backward compatible solution could be to add a puppet.conf entry to the [master] section, something along the lines:\nparameter_lookup = priority\n\nthat would be the default, so being/staying backward compatible.\n\nPeople that want to match the automatic parameter lookup to match what hiera_array() or hiera_hash() is doing, they can change the puppet.conf parameter to another value, i.e. \"merge\" or whatever it will be.\n\nWould that be a feasible way?\n\nthanks,\nSebastian", "created": "2015-01-13T03:00:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "The only way to do this properly is to create a way to associate schema with the data.  Be it type decorations in the class declaration or something like like annotations in the code.\n\nNot all hashes or arrays are to be merged, going with the route where all are treated the same will just lead to the exact same situation where some problems cant be solved with automatic param lookup.", "created": "2015-01-13T03:08:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "IMO, the way to do this is to make it possible to declare keys in hiera data to have a different resolution mechanism than \"literal value\". This is how the binder works btw. It is however difficult to implement with full backwards compatibility with something like the hiera yaml backend since it is hard to distinguish between literal values, and other types of objects.", "created": "2015-01-13T04:12:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing again.", "created": "2015-01-13T04:17:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "That's a way for sure, but I think when looking at a class without data its important to know what the data is.  And that one should be able to take a piece of code and go from there and construct data.  \n\nIt also means at every level in every hierarchy in every backend you need to annotate the data which would be prone to error.\n\nNow of course you could have some kind of schema that goes with the data so it's not stored in every key, this might work too, I think that's something I whiteboarded with [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0]\n\nBack to the code needing to be authoritive:\n\n{code}\nclass x($y) {\n}\n{code}\n\nmakes it very hard without also studying the entire body and any other class that might access $::x::y to know what data to put in hiera as there are no hints at all\n\n{code}\n# @hiera_hash($y)\nclass x($y) {\n}\n{code}\n\nThis makes it easier for someone to know by just looking at a piece of code from the forge/docs/irc that it's going to be hash merged and that they can override accordingly.  Though I am not recommending this specifically as a implementation it's horrible syntax, doesnt say anything about type of data or anyway for UIs to construct inputs etc so woefully inadequate - but shows what I mean i guess", "created": "2015-01-13T04:22:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Still, you can from Puppet 4.0, annotate the type of a class parameter - e.g.\n{code}\nclass x(Hash[String, String] $y) {\n}\n{code}\n\nWhich clearly indicates that a Hash (with String keys and String values) is expected. It does not however say anything about how merging of the data to be injected should be done and that is IMO a property of the data (or the injection mechanism, via schema, encoding in the data, a smarter hiera backend, or whatever), not of the class parameter.\n\nThe choice of \"it is this hash x::y, or that hash x::y, or a merge of all of the hashes keyed x::y in my hierarchy\" should be a decision made by the person authoring the data.", "created": "2015-01-13T05:41:00.000000"}, {"author": "623d00fd562ab90069f93d7c", "body": "I'm agree in that the merge decision should be made by the person authoring data, but what makes me annoyed is the different behavior of automatic parameter lookup and hiera functions. I think that puppet should rely this in hiera backend and it should have the same behavior that hiera functions.", "created": "2015-01-13T05:47:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] yeah I think I agree that's probably best.  So we'd need some kind of data description to go with hiera, something that overlays all the possible backends", "created": "2015-01-13T05:57:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "It could certainly be done that way", "created": "2015-01-13T06:17:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "But there would only be one description per key, so all authors creating data for all backends should do it with the same data description? One backend cant return string data and another hash - they can now, its a nightmare :)", "created": "2015-01-13T06:20:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Naturally you want the result to be type checked. This happens automatically if the parameter has type annotation. I can imagine declaring type in hiera data too.\n\nHowever I am thinking in a general sense, that the value of a key is provided by a provider and that such a provider can specify merge behavior, but can also be some other type of logic, an alias for another key, a composition of a hash of a number of given keys etc. This to reduce repetition in the data etc. Such encoding can naturally be done in the data for one backend without affecting how it is done in some other backend. You would get the same effect as you describe by binding a \"merging provider\" for a key at the top level as it would then continue to lookup the same key and merge the result.\n\nAnother example is that lower levels is a merge of a hashkey. Now, however, you want to override this at the top level in the hierarchy with a hard coded hash. etc. etc.", "created": "2015-01-13T06:36:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "See PUP-5395 where an other approach to solving this is being taken and targeted for Puppet 4.3.0", "created": "2015-10-26T16:58:00.000000"}], "components": [], "created": "2014-04-10T06:05:00.000000", "creator": "623d00fd562ab90069f93d7c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c830c59"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytog7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_17905726_*|*_6_*:*_2_*:*_22612765434_*|*_10004_*:*_1_*:*_1385648770"}], "description": "As explained at http://docs.puppetlabs.com/hiera/1/puppet.html, automatic parameter lookup only supports priority lookup.\nI think it would be interesting that it supports array (and hash) merge lookups too.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53654", "fixedVersions": [], "id": "53654", "issueType": "New Feature", "key": "HI-233", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623d00fd562ab90069f93d7c", "resolution": "Incomplete", "resolutionDate": "2015-01-13T04:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Support array merge for automatic parameter lookup", "timeSpent": "PT0S", "updated": "2015-10-26T16:59:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "Merged in https://github.com/puppetlabs/hiera/commit/dd594702a9ec8eaca1be02c61db56c5f2bdc3f51", "created": "2014-04-09T10:28:00.000000"}], "components": [], "created": "2014-04-03T10:18:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@40c19c8e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytm1j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_350756316_*|*_10007_*:*_1_*:*_168205360_*|*_5_*:*_1_*:*_3814831171_*|*_6_*:*_1_*:*_0"}], "description": "The current hiera debian package conflicts with the one provided by Ubuntu, because they've named their package \"ruby-hiera.\" In order to provide a clean upgrade path from distro packages, we should ensure our package does the right thing in terms of replacing theirs.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53774", "fixedVersions": ["HI 1.3.3"], "id": "53774", "issueType": "Bug", "key": "HI-232", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2014-04-09T10:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera should conflict/provide/replace ruby-hiera (from ubuntu)", "timeSpent": "PT0S", "updated": "2014-05-23T14:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:62450167f6a26900695cde66] if you're no longer working on this ticket, will you change the status back to open, and the assignee to Unassigned?", "created": "2014-06-26T14:29:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Duplicate of HI-220", "created": "2014-12-04T15:32:00.000000"}], "components": [], "created": "2014-04-01T04:17:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5061c4be"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytl13:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_2_*:*_20589860095_*|*_6_*:*_1_*:*_0"}], "description": "We have hiera using the result of a hiera call as a data source, like this:\n\n{noformat}\n:backends:\n - site\n - yaml\n:hierarchy:\n - %{hiera('site')}\n - defaults\n{noformat}\n\nThe \"site\" backend can return either nil (no data found), or a string representing the \"site code\" (i.e LAB), so that we can then have a specific YAML file per site.\n\nThis all works well, unless the \"site\" backend returns nil, in which case hiera gets itself stuck in a loop until it fails with a SystemStackError.\n\nA snippet of the Hiera output is below. For ease of reproduction, site_backend always returns nil.\n\n\\# hiera -d myvalue\nDEBUG: Tue Nov 26 10:39:37 +0000 2013: site_backend returning nil (key is myvalue)\nDEBUG: Tue Nov 26 10:39:37 +0000 2013: Hiera YAML backend starting\nDEBUG: Tue Nov 26 10:39:37 +0000 2013: Looking up myvalue in YAML backend\nDEBUG: Tue Nov 26 10:39:37 +0000 2013: site_backend returning nil (key is site)\nDEBUG: Tue Nov 26 10:39:37 +0000 2013: Looking up site in YAML backend\nDEBUG: Tue Nov 26 10:39:37 +0000 2013: site_backend returning nil (key is site)\n[... snip ...]\nDEBUG: Tue Nov 26 10:39:37 +0000 2013: site_backend returning nil (key is site)\nDEBUG: Tue Nov 26 10:39:37 +0000 2013: Looking up site in YAML backend\n    /usr/lib/ruby/site_ruby/1.8/hiera/console_logger.rb:9:in `debug': stack level too deep (SystemStackError)\n        from /usr/lib/ruby/site_ruby/1.8/hiera/fallback_logger.rb:39:in `debug'\n        from /usr/lib/ruby/site_ruby/1.8/hiera.rb:35:in `debug'\n        from /usr/lib/ruby/site_ruby/1.8/hiera/backend/site_backend.rb:5:in `lookup'\n        from /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:174:in `lookup'\n        from /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:171:in `each'\n        from /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:171:in `lookup'\n        from /usr/lib/ruby/site_ruby/1.8/hiera/interpolate.rb:43:in `hiera_interpolate'\n        from /usr/lib/ruby/site_ruby/1.8/hiera/interpolate.rb:13:in `send'\n         ... 1751 levels...\n        from /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:171:in `each'\n        from /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:171:in `lookup'\n        from /usr/lib/ruby/site_ruby/1.8/hiera.rb:60:in `lookup'\n        from /usr/bin/hiera:221\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54053", "fixedVersions": [], "id": "54053", "issueType": "Bug", "key": "HI-231", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Duplicate", "resolutionDate": "2014-12-04T15:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera's recursion breaks if a backend returns nil", "timeSpent": "PT0S", "updated": "2014-12-04T15:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "merged to master: 10c41d83b652b8a06005da46d5f1298e0106c39a", "created": "2014-03-19T18:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "pre-docs updated", "created": "2014-03-19T18:42:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Henrik, can you provide some status on where this ticket stands, maybe a reference to the relevant merge?", "created": "2014-06-02T13:25:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "It is merged to master as noted in a comment above. That means that when 1.4.0 is released, the merged fix will be included.", "created": "2014-06-02T13:40:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Also note that it is in \"Ready for Review\" since it is merged, and all that is needed is for the expected functionality to be reviewed before it is released. (i.e. please don't change status back to \"needs information\"). If you want to, you can grab the particular commit (or master head) and see if the fix does what you want/need, and then give your +1.", "created": "2014-06-02T13:44:00.000000"}, {"author": "557058:14cf7944-18d0-4258-b314-1a8159729c84", "body": "This doesn't look like it made it into 3.4.0. What is the status on this getting merged into mainline?", "created": "2014-07-04T15:57:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd], seems this went into master 11 months ago at commit 10c41d8. Should this be closed now? Has it been released already with 1.4.0?", "created": "2015-01-29T04:54:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Hiera 1.4.0 was never released - it was renamed to 2.0.0, and that is what we are releasing now. The fix should be reviewed for functionality. Adding it to our current sprint to make it visible.", "created": "2015-01-29T07:03:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Sorry, I meant to write - was it released already with 1.3.4?", "created": "2015-01-29T07:07:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There should be a 1.3.4 tag, and to really know you have to check if the commit was included there. As there was a comment about this not making it into Puppet 3.4.0 that is really about if Puppet 3.4.0 uses a version of hiera that includes it or not. My earlier comment was made without checking the commit history or Puppet 3.4.0's dependency on Hiera.", "created": "2015-01-29T07:14:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Yup.", "created": "2015-01-30T09:12:00.000000"}], "components": [], "created": "2014-03-19T18:27:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4dd2536f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy167:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9420_*|*_10007_*:*_1_*:*_4989347746_*|*_10009_*:*_2_*:*_22368769820_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_977278"}], "description": "There is currently no way to pass additional options to the deep hash merge gem being used for processing deep merges. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53653", "fixedVersions": ["HI 2.0.0"], "id": "53653", "issueType": "Bug", "key": "HI-230", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Fixed", "resolutionDate": "2015-01-30T09:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow options to be passed to deep merge", "timeSpent": "PT0S", "updated": "2016-04-27T17:52:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2014-03-18T10:56:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@22d9c319"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdfr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2523321721_*|*_3_*:*_1_*:*_1945689_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_9534938"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53713", "fixedVersions": [], "id": "53713", "issueType": "Sub-task", "key": "HI-229", "labels": [], "originalEstimate": "PT0S", "parent": "53589", "parentSummary": "Release Hiera 1.3.2 for Ubuntu Trusty 14.04", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2014-04-16T19:03:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "ship packages to production", "timeSpent": "PT0S", "updated": "2014-04-16T19:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "Installed on trusty and ran some queries using the json and yaml backends.", "created": "2014-04-16T18:20:00.000000"}], "components": [], "created": "2014-03-18T10:56:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@28e7ba78"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdfj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2523312577_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_8945561"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53652", "fixedVersions": [], "id": "53652", "issueType": "Sub-task", "key": "HI-228", "labels": [], "originalEstimate": "PT0S", "parent": "53589", "parentSummary": "Release Hiera 1.3.2 for Ubuntu Trusty 14.04", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2014-04-16T18:20:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "smoke-test packages", "timeSpent": "PT0S", "updated": "2014-04-16T18:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "attachments": [], "comments": [], "components": [], "created": "2014-03-18T10:56:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7b7b8e1c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdfb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_63521_*|*_5_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53558", "fixedVersions": [], "id": "53558", "issueType": "Sub-task", "key": "HI-227", "labels": [], "originalEstimate": "PT0S", "parent": "53589", "parentSummary": "Release Hiera 1.3.2 for Ubuntu Trusty 14.04", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2014-03-18T10:57:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create  1.3.2 packages", "timeSpent": "PT0S", "updated": "2014-03-18T10:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:47:00.000000"}], "components": [], "created": "2014-03-18T10:56:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7dbeba89"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytr2f:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2523197174_*|*_3_*:*_1_*:*_2509567_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_9106359"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53589", "fixedVersions": [], "id": "53589", "issueType": "Task", "key": "HI-226", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2014-04-16T19:03:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Release Hiera 1.3.2 for Ubuntu Trusty 14.04", "timeSpent": "PT0S", "updated": "2015-01-30T06:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "3600", "aggregatetimeoriginalestimate": "14400", "assignee": null, "attachments": [], "comments": [{"author": "62439968ad6b7e006aa41286", "body": "as indicated by Time Tracking, I have a patch ready, but I haven't updated the rspec tests yet.  will add pull request when tests pass again :-)\n", "created": "2014-03-18T11:49:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "So this will break everyone that relies on the current behavior...", "created": "2014-03-18T20:34:00.000000"}, {"author": "62439968ad6b7e006aa41286", "body": "no, of course not.  current behaviour will remain the default.\n", "created": "2014-03-19T01:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Duh, you added a switch to turn it on... sorry.", "created": "2014-03-19T08:43:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Kjetil, do you have a link to the PR and was it accepted? I don't see any relevant config option in the documentation for hiera yet.", "created": "2014-12-04T15:17:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closing this as Won't Do since this is for Hiera 3, and the now current Hiera 5 in puppet does not do things the same way as the old hiera. If the wanted functionality for some reason cannot be achieved with hiera 5, please open a new ticket for Puppet.", "created": "2017-08-21T09:52:00.000000"}], "components": [], "created": "2014-03-18T10:13:00.000000", "creator": "62439968ad6b7e006aa41286", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@663598e6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdcv:"}, {"fieldName": "UX Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Normal"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_108171547111_*|*_6_*:*_1_*:*_0"}], "description": "When Hiera processes the sources, it will iterate through them completely, first with the first backend, then the next backend.\n\nGiven a hiera.yaml like\n\n  :hierarchy:\n    - site-%{::site}\n    - common\n  :backends:\n    - yaml\n    - json\n\nand the files site-external.json and common.yaml, the value in common.yaml will override the value in site-external.json, which some will find non-intuitive.\n\nI propose to add a configuration switch (:backend_traversal) to allow the ordering in hierarchy to represent the priority, regardless of format used for the data file.\n", "environment": "any", "epicLinkSummary": null, "estimate": "PT3600S", "externalId": "53902", "fixedVersions": [], "id": "53902", "issueType": "New Feature", "key": "HI-225", "labels": [], "originalEstimate": "PT14400S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "62439968ad6b7e006aa41286", "resolution": "Won't Do", "resolutionDate": "2017-08-21T09:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "allow interleaved querying of backends", "timeSpent": "PT0S", "updated": "2017-08-21T09:52:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Community"], "created": "2014-03-06T19:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@64ddeeae"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt9w7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2402315558_*|*_6_*:*_1_*:*_0"}], "description": "h2. (#127) Allow escaping %{...} in hiera data so that hiera does not try to...\n\n * Author:  <>\n * Company: \n * Github ID: [ChrisPortman|https://github.com/ChrisPortman]\n * [Pull Request 184 Discussion|https://github.com/puppetlabs/hiera/pull/184]\n * [Pull Request 184 File Diff|https://github.com/puppetlabs/hiera/pull/184/files]\n\nh2. Pull Request Description\n----\n\n... perform a replacement\n\nThis change allows the escaping of %{...} with %%{...} so that the result is literally '%{...}'\n\nIt also support escaping the escape eg:\n var = 'value of var'\n\n    %{var}      : 'value of var'\n   %%{literal}  : '%{literal}'\n  %%%{var}      : '%value of var'\n %%%%{literal}  : '%%{literal}'\n\n----\n(webhooks-id: bb076e24d28f19d663b7bfe26d16036f)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53651", "fixedVersions": [], "id": "53651", "issueType": "Task", "key": "HI-224", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-04-03T15:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (184): (#127) Allow escaping %{...} in hiera data so that hiera does not try to... - ChrisPortman", "timeSpent": "PT0S", "updated": "2014-04-03T15:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "6243affffd5e450070435046", "created": "2022-04-07T07:12:00.000000", "name": "knockout-classes-merged.txt", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14169"}], "comments": [{"author": "557058:14cf7944-18d0-4258-b314-1a8159729c84", "body": "Here's a concrete example of this.\n\nSay I have a hash in Hiera called widgets. Within the hash, there is an array called list.\n\nin host.yaml\n{code}\nwidgets:\n    list:\n        - stamps\n        - shoelaces\n        - markers\n        - ---socks\n{code}\n\nin datacenter.yaml\n{code}\nwidgets:\n    list:\n        - marbles\n        - zipties\n{code}\n\nand in global.yaml\n{code}\nwidgets:\n    list:\n        - crayons\n        - buttons\n        - carkeys\n        - money\n        - socks\n{code}\n\nOur hierarchy looks like\n{code}\n:hierarchy:\n     - host\n     - datacenter\n     - global\n{code}\n\nThe idea is that we knock out the member socks which global contributes to the merged array. Unfortunately socks remains in the array.\nThe result:\n{code}\n+      crayons            buttons            carkeys            money            socks            marbles            zipties            stamps            shoelaces            markers            \n{code}\n\nWhat I desire:\n{code}\n+      crayons            buttons            carkeys            money            marbles            zipties            stamps            shoelaces            markers            \n{code}\n\nI turned on merge_debug to show this behavior in action.\n\n{code}\nSource class: Hash :: Dest class: Hash\nHashes: {\"list\"=>[\"stamps\", \"shoelaces\", \"markers\", \"---socks\"]} :: {\"list\"=>[\"marbles\", \"zipties\"]}\n looping: \"list\" => [\"stamps\", \"shoelaces\", \"markers\", \"---socks\"] :: {\"list\"=>[\"marbles\", \"zipties\"]}\n ==>merging: \"list\" => [\"stamps\", \"shoelaces\", \"markers\", \"---socks\"] :: [\"marbles\", \"zipties\"]\n  Source class: Array :: Dest class: Array\n  Arrays: [\"stamps\", \"shoelaces\", \"markers\", \"---socks\"] :: [\"marbles\", \"zipties\"]\n   knocking out: ---socks - \n   merging arrays: [\"stamps\", \"shoelaces\", \"markers\"] :: [\"marbles\", \"zipties\"]\n  Returning [\"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"]\nReturning {\"list\"=>[\"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"]}\nSource class: Hash :: Dest class: Hash\nHashes: {\"list\"=>[\"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"]} :: {\"list\"=>[\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\"]}\n looping: \"list\" => [\"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"] :: {\"list\"=>[\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\"]}\n ==>merging: \"list\" => [\"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"] :: [\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\"]\n  Source class: Array :: Dest class: Array\n  Arrays: [\"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"] :: [\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\"]\n   knocking out: \n   merging arrays: [\"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"] :: [\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\"]\n  Returning [\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\", \"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"]\nReturning {\"list\"=>[\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\", \"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"]}\nSource class: Hash :: Dest class: Hash\nHashes: {} :: {\"list\"=>[\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\", \"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"]}\nReturning {\"list\"=>[\"crayons\", \"buttons\", \"carkeys\", \"money\", \"socks\", \"marbles\", \"zipties\", \"stamps\", \"shoelaces\", \"markers\"]}\n\n{code}", "created": "2014-07-04T17:22:00.000000"}, {"author": "557058:14cf7944-18d0-4258-b314-1a8159729c84", "body": "So this is expected behavior based on the interaction between the deep_merge gem and the hiera gem. In order to achieve the functionality we're looking for, there are really two approaches that could be taken.\n\n# Make changes to hiera gem to make sure that the destination array has an item that the source array can knock out. If it doesn't, then remember the knockout item and stick it back into the source array on subsequent calls to deep_merge.\n# Make changes to the deep_merge gem to allow for a way to pass through the knockout item if there wasn't anything in the destination array to knock out.\n\nOption 2 is better than option 1 because\n* all of the knockout logic is in the deep_merge gem\n* other uses of the deep_merge gem might benefit from this functionality\n* it's simpler to implement\n\nI made changes to the [deep_merge gem|https://github.com/danielsdeleo/deep_merge] and wrote test cases and I intend to open a merge request when my testing is complete. For the curious, my changes are here: https://github.com/pkill/deep_merge/commit/4967c0f49016690c208146d581f6f58d5a7254dc\n\nFeel free to close this issue as won't fix.", "created": "2014-09-28T20:49:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:14cf7944-18d0-4258-b314-1a8159729c84], can you try this on puppet >= 4.9.4 using hiera 5? Is the behavior the same?\nPing [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d]", "created": "2017-04-05T09:24:00.000000"}, {"author": "557058:14cf7944-18d0-4258-b314-1a8159729c84", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] That's a version quite newer than what we're running so I'll have to test this in a separate environment with mocked code. I'll do so and respond within the next week or so.", "created": "2017-08-23T05:16:00.000000"}, {"author": "6243affffd5e450070435046", "body": "Bump. In order for Hiera to be somewhat effective in even reasonably complex hierarchies, the knock-out function is very important.\u00a0 In terms of reasonable and expected behavior, the knockout should apply to any and all previously seen matching values, but not \"future\" ones. There should be no limit to the intermediate number of merges nor number of times the knocked-out value has been declared.", "created": "2021-04-24T10:13:00.000000"}, {"author": "623c15ada9575800695acf1e", "body": "I agree that this is important, this is confusing and not readily apparent.\u00a0 It shouldn't matter how many \"layers\" there are in hiera - any knockout prefix in a higher-priority yaml should remove it in the final array no matter how many lower-priority yamls there are that may or may not have the original array entry.", "created": "2021-05-21T13:34:00.000000"}, {"author": "6243affffd5e450070435046", "body": "This bug still persists in Puppet6. We (at the University of Innsbruck, myself and a colleague of mine), implemented a knockout solution for the `classes` variable, used in our r10k setup in the main `manifests/site.pp` file. The full solution is attached, provided via the Public Domain.\u00a0\n\nThe solution is actually a merger of two independent solutions:\n # An elegant method of using `--class` to knockout any classes defined in the merged list, properly, as one would expect it to work per [~accountid:557058:14cf7944-18d0-4258-b314-1a8159729c84]\u00a0\n # A hackier version where one can declare a variable named `class_override_CLASSNAME` with the value of\u00a0\n\n * \n ** none \u2013 ignore this variable and do whatever the \"class\" array merges to after applying the full knockout algorithm\n ** enable \u2013 keep this class regardless of the full knockout algorithm\n ** disable \u2013 discard this class regardless of what is found in the classes list\n\nI tried to make the code as simple to understand and commented to explain ambiguities.\u00a0\n\nThe algorithm can be adapted to the core deep-merge strategy. I encourage the community to apply the basic logic of this to that functionality, so that this will work across all variables, not just classes. [^knockout-classes-merged.txt]\n\nPinging [~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd]\u00a0", "created": "2022-04-07T07:12:00.000000"}, {"author": "557058:14cf7944-18d0-4258-b314-1a8159729c84", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] I submitted the original MR on an older version of deep_merge. I'm still interested in helping move this over the line so let me know how I can help.", "created": "2022-04-07T12:42:00.000000"}], "components": [], "created": "2014-03-06T14:05:00.000000", "creator": "557058:57346af9-5cd6-461d-8bd5-6b1adba7243a", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@55bdc5da"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CS Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt9nr:"}, {"fieldName": "Zendesk Ticket Count", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "Zendesk Ticket IDs", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "38759"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Jul/14"}], "description": "Consider the following hiera structure:\n\nhost.yaml\n{code}\nstuff:\n     - ---alpha\n     - ---beta\n     - gamma\n{code}\n\ndatacenter.yaml\n{code}\nstuff:\n     - alpha\n{code}\n\nglobal.yaml\n{code}\nstuff:\n     - beta\n{code}\n\nWhere the hierarchy is:\n{code}\n:hierarchy:\n     - host\n     - datacenter\n     - global\n{code}\n\nWhat you'd expect is that a hiera_hash() call from the host matching the host.yaml is that alpha and beta would be knocked out, leaving just gamma in the resulting array.  Instead, both gamma and beta are left in.\n\nThis seems to be because the deep merge is performed in the most specific to least specific order, and the deep_merge gem will delete knockout values from the source array if they match destination values or even if they don't match anything.\n\nBecause they are removed from the array, when the next array is merged (an array that may contain a value to be knocked out), the knockout value is gone.\n\nThis likely also adds a side-effect (I haven't tested, but it seems correct) that if a value exists multiple times in various files, it is only knocked out in the \"closest\" array to the knockout value, and is then promptly added back in when seen again.\n\nA possible solution to this would be to reverse the processing order for deep_merge so that the knockouts are processed from least specific to more specific, but I suspect there will be tons of other side effects.  Another possibility is to always keep knockout values throughout the merging, and then have a final pass after the final merge to remove the knockout values.  This would allow for processing to continue in the current order.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53959", "fixedVersions": [], "id": "53959", "issueType": "Bug", "key": "HI-223", "labels": ["jira_escalated"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:57346af9-5cd6-461d-8bd5-6b1adba7243a", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 'deeper' merge knockout only knocks out from closest array", "timeSpent": "PT0S", "updated": "2022-04-07T12:42:00.000000", "votes": "7", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nWaiting for CLA signature by @devin-c\n\n@devin-c - We require a Contributor License Agreement (CLA) for people who contribute to Puppet, but we have an easy click-through license with instructions, which is available at https://cla.puppetlabs.com/\n\nNote: if your contribution is trivial and you think it may be exempt from the CLA, please post a short reply to this comment with details. http://docs.puppetlabs.com/community/trivial_patch_exemption.html\n\n", "created": "2014-02-27T16:00:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2014-02-28T17:00:00.000000"}], "components": ["Community"], "created": "2014-02-27T14:36:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ebcff2c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt6nz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3025527291_*|*_6_*:*_1_*:*_0"}], "description": "h2. Allow options to be passed to deep_merge\n\n * Author: Devin Christensen <>\n * Company: \n * Github ID: [devin-c|https://github.com/devin-c]\n * [Pull Request 182 Discussion|https://github.com/puppetlabs/hiera/pull/182]\n * [Pull Request 182 File Diff|https://github.com/puppetlabs/hiera/pull/182/files]\n\nh2. Pull Request Description\n----\n\nThis enables the end user to customize the configuration of deep_merge\nthrough the hiera configuration file.\n\n----\n(webhooks-id: e38cb4ed913c535fa0b33a4fc9d58662)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53957", "fixedVersions": [], "id": "53957", "issueType": "Task", "key": "HI-222", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-04-03T16:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (182): Allow options to be passed to deep_merge - devin-c", "timeSpent": "PT0S", "updated": "2014-04-03T16:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "557058:6b1e1d52-52a5-4560-9b0d-c3232aca487d", "created": "2014-02-27T09:18:00.000000", "name": "common.yaml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14174"}, {"attacher": "557058:6b1e1d52-52a5-4560-9b0d-c3232aca487d", "created": "2014-02-27T09:18:00.000000", "name": "hiera.yaml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14170"}, {"attacher": "557058:6b1e1d52-52a5-4560-9b0d-c3232aca487d", "created": "2014-02-27T09:18:00.000000", "name": "override.yaml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14181"}], "comments": [{"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Does the behavior described in https://puppet.atlassian.net/browse/HI-183 sound like this same issue to you?", "created": "2014-02-27T10:03:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Closing due to lack of response. If this is still needed, open a new ticket with additional detail as requested.", "created": "2014-12-04T15:05:00.000000"}], "components": [], "created": "2014-02-27T09:18:00.000000", "creator": "557058:6b1e1d52-52a5-4560-9b0d-c3232aca487d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@111b62e8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt6g7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24212824477_*|*_6_*:*_1_*:*_0"}], "description": "If I have a YAML data file with the following content :\n\n{code}\n---\nmyarray:\n - 1\n - 2\n - 3\nmyrefarray: \"%{hiera('myarray')}\"\n{code}\n\nAnd an other one with :\n\n{code}\n---\nmyrefarray:\n  - 4\n  - 5\n  - 6\n{code}\n\nThe command \"hiera -d -c hiera.yaml myrefarray --array\" returns :\n[\"[1, 2, 3]\", 4, 5, 6]\n\nI would expect Hiera to return :\n[1, 2, 3, 4, 5, 6]\n\nIs this behaviour expected ? ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53955", "fixedVersions": [], "id": "53955", "issueType": "Bug", "key": "HI-221", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:6b1e1d52-52a5-4560-9b0d-c3232aca487d", "resolution": "Won't Fix", "resolutionDate": "2014-12-04T15:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Cannot concatenate arrays when interpolating", "timeSpent": "PT0S", "updated": "2014-12-04T15:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "created": "2015-12-21T17:30:00.000000", "name": "hi-220-init-manifest", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14177"}, {"attacher": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "created": "2015-12-22T12:36:00.000000", "name": "hi-220-simple-init-manifest", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14178"}, {"attacher": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:be4c903a-c5d6-4531-a658-6454cf27da10", "created": "2015-10-15T07:25:00.000000", "name": "hiera-recursive-lookup.patch", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/14176"}], "comments": [{"author": "623c08e1562ab90069f8aed4", "body": "I've changed the wording of the docs warning to link here and be more emphatic about avoiding hiera() in the config file. (This change will go out with the hiera 1.3.2 final release.)", "created": "2014-02-26T12:43:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:be4c903a-c5d6-4531-a658-6454cf27da10", "body": "The reason for the loop is very simple, to lookup the key (in the example above \"role\") the yaml-backend has to read in all files listed in :hierarchy. But if the file contains an interpolation, which couldn't be resolved, it calls the lookup function again, and the endless loop begins. To solve this, the attached patch only call the lookup function for each key once and return nil on the second call.", "created": "2015-10-15T07:33:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:a31166c6-c1b4-4abc-9a48-9794b3781e9b", "body": "Hello. Is there an ETA for fixing this issue? We'd like to make use of the use case above but are hold back by this issue. I'd be willing to make a PR based on Former user his fix if that would speed up the process.", "created": "2015-12-02T11:05:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ping [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] what does 'hiera 4'/data in modules do when fed the same as in the description?\n\nWe need to decide on how to handle a recursion like this: just run with paths up to the known point (i.e. the paths already processed when the reentrant calls come to lookup). Or do something else to support this usecase?", "created": "2015-12-02T15:35:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd], this is already covered in 'hiera 4'/data in modules. There, it's not allowed to use the interpolation method syntax, i.e.\n{code}\nhierarchy:\n  - \"%{::certname}\"           # this is OK.\n  - \"roles/%{hiera('role')}\"  # Not OK and will result in the error \"Interpolation using method syntax is not allowed in this context\"\n{code}", "created": "2015-12-03T07:46:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ok, I think that is the right decision (not allowing method calls). We should deprecated this in the next relase of hiera (3.1.0)", "created": "2015-12-03T08:17:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:a31166c6-c1b4-4abc-9a48-9794b3781e9b", "body": "We really like the idea of specifying the role in a hiera node file and through that, include the hiera role file. This seems more transparant than specifying the role in another (Facter) file or in an external source. As far as we know, the above method is the only way to achieve this. Is there another option to load a hira file based on a property in another hiera file?", "created": "2015-12-03T09:13:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "[~accountid:999854:4b23c2ea-0b10-4db0-9e7a-696e8f6f140f] if I get what you're saying then this will work:\n\n{code}\nnode default {\n  $role = hiera(\"role\", \"bootstrap\")\n  include(hiera(\"classes\"))\n}\n{code}\n\nand you can then just use {code}%{role}{code} in your hiera.yaml and supply role however you want", "created": "2015-12-03T09:26:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:a31166c6-c1b4-4abc-9a48-9794b3781e9b", "body": "Works like a charm, thanks!", "created": "2015-12-03T11:48:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Deprecation warning for calling methods, and error for calling hiera function in hiera's conf, merged to master: 87a1827", "created": "2015-12-14T07:37:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Reverted the merge of PR-328. I improved the solution and created PR-330 instead. Please re-review.", "created": "2015-12-14T08:37:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to master at: 8e34c4f", "created": "2015-12-17T04:15:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "I don't see any deprication warning message when causing a call to hiera() during interpolation of the hiera config file.  The discussion and title of the ticket would suggest that I should see such a warning.\n\nI set up a manifest and a hiera configuration, in which hiera.yaml calls hiera('role') and a module manifest that makes the function call hiera('somename').  (See attached init-manifest)\n\nComparing the old hiera (commit sha 51d74ff8f693188d07297c80d9b3f2f8cc9ec310) to the new sha (8e34c4fec5d1afc3dd89d01520debf7daab2f741 ==  head), I see following differences:\n\n1.  function call from the module manifest returns different error messages:\n\nold msg:\n{code}\nError: Could not run: stack level too deep\n{code}\n\nnew msg:\n{code}\nError: Evaluation Error: Error while evaluating a Function Call, Lookup recursion detected in [hiera('role')] at /etc/puppetlabs/code/environments/production/modules/hieratest/manifests/init.pp:11:10 on node rg9zuk876be3znp.delivery.puppetlabs.net\n{code}\n\n2.  These error messages are displayed in response to the command: 'puppet lookup somename'.\n\n3.  The same is also true for 'hiera somename', except in the fixed version I also see a stack trace.\n\nSo... Deprication?  It seems it got merged before and then reverted.  Was this omitted or do we no longer want that warning?", "created": "2015-12-21T17:29:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "Hi [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d].  See comment above.\nThanks.\n\n", "created": "2015-12-21T17:31:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "The reason you don't see a deprecation warning is that your _hiera.yaml_ configuration contains a circular recursion error. If you fix that, then the warning will be printed instead.\n\n*Explanation*\nWhen the _hiera.yaml_ file contains a {{%\\{hiera('somekey')\\}}} this will lead to that a new hiera lookup is performed and hence that the configuration is subject to a new interpolation. This will work for cases when the interpolated expression is resolved by a lookup that uses entries declared _earlier in the hierarchy_. When that's not the case (as in your example), then the same entry will be subject to interpolation again and the recursion is a fact.\n\nThe unit spec tests contains a case that covers this.\n\n*What to expect*\nThe expected result of applying the PR is:\n1. You will never get a \"stack level to deep\" error as the result of using a {{%\\{hiera('<some_key>')\\}}} declaration in the _hiera.yaml_ file.\n2. For the cases when you did get a \"stack level too deep\" before, you will now instead get a \"lookup recursion\" error.\n3. For all other cases where a {{%\\{<valid_method>('<some_key>')\\}}} is encountered in the _hiera.yaml_ file, a deprecation warning will be output.", "created": "2015-12-21T20:54:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "Thanks Thomas.  I had (mis)understood that any call to hiera from within the configuration file would generate the deprecation warning, and that even if there were a recursion error, there would be a warning.  I will test again with this in mind.  Thanks.", "created": "2015-12-22T08:30:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "It appears NO deprecation warning is issued when the user executes the hiera shell command.  The command 'heira somekey' causes no deprecation warning.\n{code}\n[root@qq9wi3yxlwklr7m roles]# hiera somekey\nsomeval\n[root@qq9wi3yxlwklr7m roles]#\n{code}\nThe deprecation warning is seen when the command 'puppet lookup somekey' is executed, or when either function hiera() or lookup() is called from a manifest.\n\nI am using puppet-agent build sha 9a1dfae64751da59ce8763730846669356da96dd for this test (http://builds.puppetlabs.lan/puppet-agent/9a1dfae64751da59ce8763730846669356da96dd/), installed by beaker.\n\nI retested using a simple manifest with no modules defined.  The hiera configuration looks like this:\n{code}\n/etc/puppetlabs/code/\n\u251c\u2500\u2500 environments\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 production\n\u251c\u2500\u2500 hieradata\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 global.yaml\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 roles\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 world.yaml\n\u2514\u2500\u2500 hiera.yaml\n{code}\nhiera.yaml:\n{code}\n---\n    :backends:\n      - \"yaml\"\n    :logger: \"console\"\n    :hierarchy:\n      - \"global\"\n      - \"roles/%{hiera('hello')}\"\n\n    :yaml:\n      :datadir: \"/etc/puppetlabs/code/hieradata\"\n{code}\nhieradata/global.yaml:\n{code}\n---\n    hello: \"world\"\n{code}\nhieradata/roles/world.yaml\n{code}\n---\n    somekey: \"someval\"\n{code}\nSee attached file: hi-220-simple-init-manifest.\n\nIn this configuration, global.yaml is searched first, facilitating lookup of \"hello\" (evaluates to \"world\").  Key: \"somekey\" is resolved in hieradata/roles/world.yaml without runaway recursion.  In the fixed version I see the deprecation warning, then the correct value for the key (\"someval\").\n\n3 other observations:\n1. The command 'puppet lookup somekey' results in 4 copies of the warning message.\n{code}\n[root@qq9wi3yxlwklr7m roles]# puppet lookup somekey\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\n--- someval\n...\n[root@qq9wi3yxlwklr7m roles]#\n{code}\n2. The command: puppet apply -e \"notice(hiera('somekey'))\" results in two copies of the warning.\n{code}\n[root@qq9wi3yxlwklr7m code]# puppet apply -e \"notice(hiera('somekey'))\"\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: Scope(Class[main]): someval\nNotice: Compiled catalog for qq9wi3yxlwklr7m.delivery.puppetlabs.net in environment production in 0.08 seconds\nNotice: Applied catalog in 0.02 seconds\n[root@qq9wi3yxlwklr7m code]#\n{code}\n3. The command: puppet apply -e \"notice(lookup('somekey'))\" results in four copies of the warning.\n{code}\n[root@j8n2u9bp4askgom hieradata]# puppet apply -e \"notice(lookup('somekey'))\"\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: hiera(): Use of interpolation methods in hiera configuration file is deprecated\nNotice: Scope(Class[main]): someval\nNotice: Compiled catalog for j8n2u9bp4askgom.delivery.puppetlabs.net in environment production in 0.12 seconds\nNotice: Applied catalog in 0.03 seconds\n[root@j8n2u9bp4askgom hieradata]#\n{code}\n\nHaving previously established that the recursion error messages are properly improved, the only outstanding questions are:\n1. Should hiera shell command generate a deprecation warning?\n2. Though not serious, is the repeated deprecation warning expected? Tolerable? Easy or hard to fix? I just seems more presentable if the warning were displayed only once.", "created": "2015-12-22T11:36:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "1. The reason you don't see the warning when using the hiera shell command is that both warning and debug messages are suppressed unless you run the command using the {{\\-d}} or {{--debug}}. Room for improvement for sure but not in scope for this JIRA.\n\n2. It is expected that you see multiple deprecation warnings since Hiera requests the interpolation method at least twice per invocation. When the lookup stems from Puppet there will be two such invocations (one for the {{lookup_options}} and one for the actual key)  and hence four messages. The only way to get rid of all duplicates is probably to add some logic to the logger to keep it from repeat the same message more than once. Such logic must deal with the fact that debug messages will be emitted in between the warnings. Personally, I don't think it's worth the effort.", "created": "2015-12-22T15:14:00.000000"}, {"author": "557058:8872d0b6-d198-4e25-92ad-02776be82d59", "body": "Thank you [~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d].  Verified the warning is visible when running hiera --debug.  Repeated warnings is a fact of life at the moment.  Marking this one resolved.", "created": "2015-12-22T17:26:00.000000"}], "components": [], "created": "2014-02-25T21:05:00.000000", "creator": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e5fef04"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynzxj:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Calling {{hiera}} interpolation method from within a hiera.yaml caused infinite reqursion. This was fixed by making it an error to se {{hiera}} method in interpolation in hiera.yaml. Also, the use of other interpolation methods in hiera.yaml will now yield a deprecation warning as those will not be allowed in hiera 4.0."}, {"fieldName": "Scope Change Category", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Found"}, {"fieldName": "Scope Change Reason", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "Out of issues to grab for the active sprint"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_392013019_*|*_1_*:*_1_*:*_56697141352_*|*_10007_*:*_1_*:*_258392500_*|*_3_*:*_1_*:*_7881839_*|*_5_*:*_1_*:*_7406824821_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_3_*:*_61925786_*|*_10004_*:*_3_*:*_25485582"}], "description": "Given the following {{hiera.yaml}} file where an interpolation function is used to define the hierarchy:\n\n{code}\n---\n:backends:\n  - yaml\n:logger: console\n:hierarchy:\n  - \"roles/%{hiera('role')}\"\n  - common\n\n:yaml:\n   :datadir: /etc/puppet/environments/%{environment}/extdata\n{code}\n\nThis will result in infinite recursion on any lookup:\n\n{code}\n# hiera foo -d\nDEBUG: Tue Feb 25 19:57:34 -0800 2014: Hiera YAML backend starting\nDEBUG: Tue Feb 25 19:57:34 -0800 2014: Looking up foo in YAML backend\nDEBUG: Tue Feb 25 19:57:34 -0800 2014: Looking up role in YAML backend\n\n... repeats for a bit ...\n\nDEBUG: Tue Feb 25 19:57:34 -0800 2014: Looking up role in YAML backend\nDEBUG: Tue Feb 25 19:57:39 -0800 2014: Looking up role in YAML backend\nDEBUG: Tue Feb 25 19:57:39 -0800 2014: Looking up role in YAML backend\n/usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:172:in `lookup': stack level too deep (SystemStackError)\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:171:in `each'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:171:in `lookup'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/interpolate.rb:43:in `hiera_interpolate'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/interpolate.rb:13:in `send'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/interpolate.rb:13:in `interpolate'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/recursive_guard.rb:16:in `check'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/interpolate.rb:11:in `interpolate'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:93:in `parse_string'\n\t ... 1747 levels...\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:171:in `each'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera/backend.rb:171:in `lookup'\n\tfrom /usr/lib/ruby/site_ruby/1.8/hiera.rb:60:in `lookup'\n\tfrom /usr/bin/hiera:221\n{code}\n\nThe [docs mention|http://docs.puppetlabs.com/hiera/1/variables.html#the-hiera-lookup-function] that using {{hiera()}}:\n\n{quote}\n...generally nonsensical and not useful in Hiera\u2019s settings\n{quote}\n\nHowever, there are some semi-useful use cases. For example, the following hierarchy is functional:\n\n{code}\n:hierarchy:\n  - \"%{::certname}\" # <-- \"role\" is defined here. Always.\n  - \"roles/%{hiera('role')}\"\n  - common\n{code}\n\nGiven that infinite recursion is A Bad Thing\u2122, we should either guard this use case or disallow the use of interpolation functions in the Hiera settings file.", "environment": "CentOS 6.5\nHiera 1.3.1 from PL yum repos", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53557", "fixedVersions": ["HI 3.1.0"], "id": "53557", "issueType": "Bug", "key": "HI-220", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "resolution": "Fixed", "resolutionDate": "2015-12-22T17:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Deprecate interpolation via function in hiera.yaml", "timeSpent": "PT0S", "updated": "2016-03-17T11:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:22:00.000000"}], "components": [], "created": "2014-02-20T14:10:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@37c7de7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9o7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_535450087_*|*_5_*:*_1_*:*_8281699728_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53586", "fixedVersions": [], "id": "53586", "issueType": "Sub-task", "key": "HI-219", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2014-06-02T16:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:22:00.000000"}], "components": [], "created": "2014-02-20T14:10:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6ff61f05"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9nz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_534846925_*|*_5_*:*_1_*:*_8282297388_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54052", "fixedVersions": [], "id": "54052", "issueType": "Sub-task", "key": "HI-218", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2014-06-02T16:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:22:00.000000"}], "components": [], "created": "2014-02-20T14:10:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4301c1dc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9nr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_534526517_*|*_5_*:*_1_*:*_8282614803_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53997", "fixedVersions": [], "id": "53997", "issueType": "Sub-task", "key": "HI-217", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update the downloads page", "timeSpent": "PT0S", "updated": "2014-06-02T16:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "merged in pe-hiera at 5382d70941ce5eea48274e53609fe89438a05d70", "created": "2014-02-26T18:50:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:20:00.000000"}], "components": [], "created": "2014-02-20T14:10:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@49f6b51c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9nj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_535193245_*|*_5_*:*_1_*:*_8281830605_*|*_6_*:*_1_*:*_0"}], "description": "This release is getting merged into the pe-hiera 3.3.x branch, after the current pe-hiera 3.2.x branch gets merged up into pe-hiera 3.3.x", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53901", "fixedVersions": [], "id": "53901", "issueType": "Sub-task", "key": "HI-216", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge into pe branch if final release", "timeSpent": "PT0S", "updated": "2014-06-02T16:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:20:00.000000"}], "components": [], "created": "2014-02-20T14:10:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5b65bb6b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9nb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_534626523_*|*_5_*:*_1_*:*_8282390970_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53951", "fixedVersions": [], "id": "53951", "issueType": "Sub-task", "key": "HI-215", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge tag into the right branch, push out updated branch(es) and tag", "timeSpent": "PT0S", "updated": "2014-06-02T16:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:20:00.000000"}], "components": [], "created": "2014-02-20T14:10:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@612d08a6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9n3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_532683918_*|*_3_*:*_1_*:*_1805558_*|*_5_*:*_1_*:*_8282525550_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53779", "fixedVersions": [], "id": "53779", "issueType": "Sub-task", "key": "HI-214", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2014-06-02T16:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "623c08e1562ab90069f8aed4", "body": "This is ready to go. Hit me when it's release time. ", "created": "2014-02-26T12:43:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:20:00.000000"}], "components": [], "created": "2014-02-20T14:10:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@37758814"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9mv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_534876187_*|*_5_*:*_1_*:*_8282138171_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53773", "fixedVersions": [], "id": "53773", "issueType": "Sub-task", "key": "HI-213", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2014-06-02T16:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Go from [~accountid:557058:aa277a93-6688-4f34-ad9d-e53477acf74b], [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920], [~accountid:623a4c3b4a57610068e6782b], [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0]", "created": "2014-02-26T18:08:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:20:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@725091c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9mn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_532688624_*|*_5_*:*_1_*:*_8284314472_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53710", "fixedVersions": [], "id": "53710", "issueType": "Sub-task", "key": "HI-212", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting", "timeSpent": "PT0S", "updated": "2014-06-02T16:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "attachments": [], "comments": [{"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Testing Ubuntu 12.04.", "created": "2014-02-26T17:09:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "JSON and YAML lookups pass after installation on Ubuntu 12.04:\n\n{noformat}\nroot@huginn:~# dpkg -i hiera_1.3.2-1puppetlabs1_all.deb\n\nSelecting previously unselected package hiera.\n(Reading database ... 53994 files and directories currently installed.)\nUnpacking hiera (from hiera_1.3.2-1puppetlabs1_all.deb) ...\ndpkg: dependency problems prevent configuration of hiera:\n hiera depends on ruby | ruby-interpreter", "created": "2014-02-26T17:21:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Everything looks good on CentOS 6.5 as well:\n\n{noformat}\n[root@muninn ~]# yum install -y puppetlabs-release-el-6.noarch.rpm\n\n...\n\nComplete!\n\n[root@muninn ~]# yum install -y hiera-1.3.2-1.el6.noarch.rpm\n\n...\n\nRunning Transaction\n  Installing : compat-readline5-5.2-17.1.el6.x86_64                                                                                                                   1/8\n  Installing : ruby-libs-1.8.7.352-13.el6.x86_64                                                                                                                      2/8\n  Installing : ruby-1.8.7.352-13.el6.x86_64                                                                                                                           3/8\n  Installing : ruby-irb-1.8.7.352-13.el6.x86_64                                                                                                                       4/8\n  Installing : ruby-rdoc-1.8.7.352-13.el6.x86_64                                                                                                                      5/8\n  Installing : rubygems-1.3.7-5.el6.noarch                                                                                                                            6/8\n  Installing : rubygem-json-1.5.5-1.el6.x86_64                                                                                                                        7/8\n  Installing : hiera-1.3.2-1.el6.noarch                                                                                                                               8/8\n  Verifying  : ruby-irb-1.8.7.352-13.el6.x86_64                                                                                                                       1/8\n  Verifying  : ruby-1.8.7.352-13.el6.x86_64                                                                                                                           2/8\n  Verifying  : compat-readline5-5.2-17.1.el6.x86_64                                                                                                                   3/8\n  Verifying  : ruby-rdoc-1.8.7.352-13.el6.x86_64                                                                                                                      4/8\n  Verifying  : rubygems-1.3.7-5.el6.noarch                                                                                                                            5/8\n  Verifying  : ruby-libs-1.8.7.352-13.el6.x86_64                                                                                                                      6/8\n  Verifying  : rubygem-json-1.5.5-1.el6.x86_64                                                                                                                        7/8\n  Verifying  : hiera-1.3.2-1.el6.noarch                                                                                                                               8/8\n\nInstalled:\n  hiera.noarch 0:1.3.2-1.el6\n\nDependency Installed:\n  compat-readline5.x86_64 0:5.2-17.1.el6       ruby.x86_64 0:1.8.7.352-13.el6          ruby-irb.x86_64 0:1.8.7.352-13.el6       ruby-libs.x86_64 0:1.8.7.352-13.el6\n  ruby-rdoc.x86_64 0:1.8.7.352-13.el6          rubygem-json.x86_64 0:1.5.5-1.el6       rubygems.noarch 0:1.3.7-5.el6\n\nComplete!\n\n\n[root@muninn ~]# hiera --version\n1.3.2\n\n\n[root@muninn ~]# vim /var/lib/hiera/global.json   # <--- define key foo\n[root@muninn ~]# vim /var/lib/hiera/defaults.yaml # <--- define key baz\n[root@muninn ~]# vim /etc/hiera.yaml              # <--- activate JSON backend\n\n[root@muninn ~]# hiera foo\nbar\n[root@muninn ~]# hiera baz\nbim\n{noformat}", "created": "2014-02-26T17:32:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:19:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3d4aa816"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9mf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_528163297_*|*_5_*:*_1_*:*_8285876688_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2959831"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53650", "fixedVersions": [], "id": "53650", "issueType": "Sub-task", "key": "HI-211", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T17:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2014-06-02T16:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages are built, I'll push the tag out once we're ready to go live", "created": "2014-02-26T16:52:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:19:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7df7a955"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9m7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_526430667_*|*_3_*:*_1_*:*_980364_*|*_5_*:*_1_*:*_8288823733_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_744074"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53556", "fixedVersions": [], "id": "53556", "issueType": "Sub-task", "key": "HI-210", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T16:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2014-06-02T16:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:18:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@20d8eace"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9lz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_526422365_*|*_3_*:*_1_*:*_2168479_*|*_5_*:*_1_*:*_8282027800_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_6307595"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53585", "fixedVersions": [], "id": "53585", "issueType": "Sub-task", "key": "HI-209", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T18:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare long form release notes", "timeSpent": "PT0S", "updated": "2014-06-02T16:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:16:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@41591f4f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9lr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_526408762_*|*_5_*:*_1_*:*_8290398903_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54051", "fixedVersions": [], "id": "54051", "issueType": "Sub-task", "key": "HI-208", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T16:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is a new version created for the next version in the series?", "timeSpent": "PT0S", "updated": "2014-06-02T16:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:16:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@39b95ec7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9lj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_526378909_*|*_5_*:*_1_*:*_8290405561_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53996", "fixedVersions": [], "id": "53996", "issueType": "Sub-task", "key": "HI-207", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T16:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every bug targeted at the release?", "timeSpent": "PT0S", "updated": "2014-06-02T16:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:15:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@22c73fae"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9lb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_526312949_*|*_5_*:*_1_*:*_8290462186_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53900", "fixedVersions": [], "id": "53900", "issueType": "Sub-task", "key": "HI-206", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T16:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a bug targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2014-06-02T16:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:12:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@57fa8f8e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9l3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_526180930_*|*_5_*:*_1_*:*_8290370675_*|*_6_*:*_1_*:*_0"}], "description": "All tests (spec, acceptance) should be passing on all platforms.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53950", "fixedVersions": [], "id": "53950", "issueType": "Sub-task", "key": "HI-205", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T16:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure tests are passing", "timeSpent": "PT0S", "updated": "2014-06-02T16:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:23:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@30139dd8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt45b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_508690816_*|*_5_*:*_1_*:*_8308537227_*|*_6_*:*_1_*:*_0"}], "description": "Do sub-tickets here match steps in https://confluence.puppetlabs.com/display/DEL/FOSS+Release+Process? And do those steps need updating for any recent tooling changes?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53778", "fixedVersions": [], "id": "53778", "issueType": "Sub-task", "key": "HI-204", "labels": [], "originalEstimate": "PT0S", "parent": "53772", "parentSummary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-26T11:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is checklist current", "timeSpent": "PT0S", "updated": "2014-06-02T16:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "attachments": [], "comments": [{"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:46:00.000000"}], "components": [], "created": "2014-02-20T14:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3f67d0aa"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq9kv:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29512_*|*_3_*:*_1_*:*_9660726_*|*_6_*:*_2_*:*_172475067_*|*_10006_*:*_2_*:*_353356398"}], "description": "See https://confluence.puppetlabs.com/display/DEL/FOSS+Release+Process", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53772", "fixedVersions": ["HI 1.3.2"], "id": "53772", "issueType": "Task", "key": "HI-203", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-02-26T18:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.2 Release -- Feb. 27, 2014", "timeSpent": "PT0S", "updated": "2015-01-30T06:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:21:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4cdbf090"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3gn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_168224362_*|*_5_*:*_1_*:*_8809986979_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53771", "fixedVersions": [], "id": "53771", "issueType": "Sub-task", "key": "HI-202", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-20T16:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2014-06-02T16:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:11:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@84d35a7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3gf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_168064061_*|*_3_*:*_1_*:*_80351_*|*_5_*:*_1_*:*_8809442571_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53707", "fixedVersions": [], "id": "53707", "issueType": "Sub-task", "key": "HI-201", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-20T16:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2014-06-02T16:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:11:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e361e07"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3g7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_167592301_*|*_5_*:*_1_*:*_8809993097_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53649", "fixedVersions": [], "id": "53649", "issueType": "Sub-task", "key": "HI-200", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-20T15:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update the downloads page", "timeSpent": "PT0S", "updated": "2014-06-02T16:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "We're not going to merge into pe-hiera until we have a final tag", "created": "2014-02-19T17:01:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:21:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c8ac693"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3fz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_84996782_*|*_5_*:*_1_*:*_8893204543_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53555", "fixedVersions": [], "id": "53555", "issueType": "Sub-task", "key": "HI-199", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Won't Fix", "resolutionDate": "2014-02-19T17:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge into pe branch", "timeSpent": "PT0S", "updated": "2014-06-02T16:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:08:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@106fa41e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3fr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_167698637_*|*_5_*:*_1_*:*_8809744045_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53584", "fixedVersions": [], "id": "53584", "issueType": "Sub-task", "key": "HI-198", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-20T15:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge tag into the right branch, push out updated branch(es) and tag", "timeSpent": "PT0S", "updated": "2014-06-02T16:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:08:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4562e08"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3fj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_165435390_*|*_3_*:*_1_*:*_2065514_*|*_5_*:*_1_*:*_8809920928_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54050", "fixedVersions": [], "id": "54050", "issueType": "Sub-task", "key": "HI-197", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-20T15:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2014-06-02T16:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:08:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a4c15c1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3fb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_69647970_*|*_10007_*:*_1_*:*_98615251_*|*_5_*:*_1_*:*_8809155652_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53995", "fixedVersions": [], "id": "53995", "issueType": "Sub-task", "key": "HI-196", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-20T16:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2014-06-02T16:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "go from [~accountid:557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920], [~accountid:623a4c3b4a57610068e6782b], [~accountid:557058:252602f6-56c9-47a2-a176-2c9c57106330], [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0], and [~accountid:557058:aa277a93-6688-4f34-ad9d-e53477acf74b]", "created": "2014-02-20T15:21:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:08:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3390d82b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3f3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_162915911_*|*_3_*:*_1_*:*_2518013_*|*_5_*:*_1_*:*_8811981127_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53899", "fixedVersions": [], "id": "53899", "issueType": "Sub-task", "key": "HI-195", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-20T15:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting", "timeSpent": "PT0S", "updated": "2014-06-02T16:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "attachments": [], "comments": [{"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "Testing debian6/7", "created": "2014-02-19T18:27:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "testing ubuntu 12", "created": "2014-02-19T18:28:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "Ubuntu 12 looks good.\n\nInstalled packaged, ran {{hiera --version}}, put a {{global.json}} and a {{defaults.yaml}} data file in {{/var/lib/hiera}} (default location), modified {{/etc/hiera.yaml}} to include the json backend (changed nothing else). Lookups of both the yaml and json data worked just fine.", "created": "2014-02-19T18:34:00.000000"}, {"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "Passed same tests on debian squeeze and wheezy.", "created": "2014-02-19T19:01:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:07:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@697435c8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3ev:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_83906987_*|*_3_*:*_1_*:*_2014385_*|*_5_*:*_1_*:*_8885146512_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_6344120"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53949", "fixedVersions": [], "id": "53949", "issueType": "Sub-task", "key": "HI-194", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-19T19:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2014-06-02T16:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:07:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@14a9d0ec"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3en:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_82710592_*|*_3_*:*_1_*:*_961586_*|*_5_*:*_1_*:*_8893498507_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_229876"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53834", "fixedVersions": [], "id": "53834", "issueType": "Sub-task", "key": "HI-193", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-19T16:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2014-06-02T16:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:04:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5cbb64c6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3ef:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_82709436_*|*_3_*:*_1_*:*_463403_*|*_5_*:*_1_*:*_8809131363_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_84920078"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53770", "fixedVersions": [], "id": "53770", "issueType": "Sub-task", "key": "HI-192", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-20T16:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare long form release notes", "timeSpent": "PT0S", "updated": "2014-06-02T16:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "1.3.4 already exists.", "created": "2014-02-19T16:22:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@edbe2cd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3e7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_60605083_*|*_3_*:*_1_*:*_26376_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_22067602"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53704", "fixedVersions": [], "id": "53704", "issueType": "Sub-task", "key": "HI-191", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-19T16:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is a new version created for the next version in the series?", "timeSpent": "PT0S", "updated": "2014-02-19T16:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@9413a77"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3dz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_60603294_*|*_3_*:*_1_*:*_7728203_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_14334312"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53648", "fixedVersions": [], "id": "53648", "issueType": "Sub-task", "key": "HI-190", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-19T16:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every bug targeted at the release?", "timeSpent": "PT0S", "updated": "2014-02-19T16:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "* HI-115\n* HI-179", "created": "2014-02-19T14:12:00.000000"}], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@54af6d4a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3dr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_60603171_*|*_3_*:*_1_*:*_13573110_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_758946"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53554", "fixedVersions": [], "id": "53554", "issueType": "Sub-task", "key": "HI-189", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-19T14:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a bug targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2014-02-19T14:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [], "components": [], "created": "2014-02-18T17:24:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4cbbf02e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3dj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_60602004_*|*_3_*:*_1_*:*_282446_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_476915"}], "description": "All tests (spec, acceptance) should be passing on all platforms.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53581", "fixedVersions": [], "id": "53581", "issueType": "Sub-task", "key": "HI-188", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-19T10:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure tests are passing", "timeSpent": "PT0S", "updated": "2014-02-19T10:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "Checked against the checklist in confluence. Other than some small wording differences these are the same.", "created": "2014-02-19T10:21:00.000000"}], "components": [], "created": "2014-02-18T17:23:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1d27a4cd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt3db:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_60599500_*|*_3_*:*_1_*:*_434525_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_34028"}], "description": "Do sub-tickets here match steps in https://confluence.puppetlabs.com/display/DEL/FOSS+Release+Process? And do those steps need updating for any recent tooling changes?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54047", "fixedVersions": [], "id": "54047", "issueType": "Sub-task", "key": "HI-187", "labels": [], "originalEstimate": "PT0S", "parent": "53994", "parentSummary": "Hiera 1.3.2-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-19T10:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is checklist current", "timeSpent": "PT0S", "updated": "2014-02-19T10:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:47:00.000000"}], "components": [], "created": "2014-02-18T17:23:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6060b0d6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt2k7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_22178_*|*_3_*:*_1_*:*_107673872_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_60611953"}], "description": "See https://confluence.puppetlabs.com/display/DEL/FOSS+Release+Process", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53994", "fixedVersions": [], "id": "53994", "issueType": "Task", "key": "HI-186", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-02-20T16:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.2-rc2 Release", "timeSpent": "PT0S", "updated": "2015-01-30T06:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "https://github.com/puppetlabs/hiera/pull/183 merged in 89fe955", "created": "2014-03-19T11:31:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This seems to have been merged to stable as well at: 7b4819f0e4d94dc11f318e9152b5e817e89f7395", "created": "2014-05-21T17:08:00.000000"}], "components": [], "created": "2014-02-18T17:05:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@63d111ce"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqhan:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_3157668_*|*_1_*:*_1_*:*_2481937176_*|*_5_*:*_1_*:*_5622311817_*|*_6_*:*_1_*:*_0"}], "description": "This involves adding/updating spen and acceptance tests for trusty, and making sure the build_defaults has been updated accordingly", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53647", "fixedVersions": ["HI 1.3.3", "HI 2.0.0"], "id": "53647", "issueType": "Task", "key": "HI-185", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2014-03-19T12:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add Trusty (Ubuntu 14.04) support", "timeSpent": "PT0S", "updated": "2014-05-23T14:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:983cfc60-0281-40e4-b9a3-49c169aead0b", "body": "Is there any progress on this ticket? I just wasted an hour figuring this out on my own\u2026\n\nWhere can this be fixed? I'd be happy to create a PR given someone points me to where in the code this problem is.", "created": "2015-06-24T04:30:00.000000"}, {"author": "557058:983cfc60-0281-40e4-b9a3-49c169aead0b", "body": "In the meantime a fix in the documentation would be much appreciated.\n\nSupplying a yaml with \"::fact_name\" works and should be what is used in the samples of these pages:\n\n- http://docs.puppetlabs.com/hiera/latest/command_line.html#json-and-yaml-scopes\n- https://puppetlabs.com/blog/debugging-hiera\n\n{code:yaml}\n---\n\"::osfamily\": Debian\n\"::service\":  database\n{code}\n\nas well as the json examples:\n\n{code:json}\n{\n  \"::osfamily\": \"Debian\",\n  \"::service\": \"database\"\n}\n{code}", "created": "2015-06-24T05:06:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "PR283 submitted as part of #puppethack.", "created": "2015-07-30T08:01:00.000000"}, {"author": "557058:0117712d-bb9d-4300-af17-618b151fa267", "body": "I'd also REALLY like to see this. As klugey but functional workaround, I'm doing this:\n\n\n{code}\nfacter --yaml | ruby -e 'require \"yaml\"", "created": "2015-09-07T11:03:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We should also review how this works with the lookup command.", "created": "2015-12-13T07:18:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I tested with the lookup command. A facts file that contains:\n{code}\nosfamily: Debian\n{code}\nworks well with both:\n{code}\n:hierarchy:\n  - \"osfamily/%{::osfamily}\"\n{code}\nand:\n{code}\n:hierarchy:\n  - \"osfamily/%{osfamily}\"\n{code}\nHowever, if the facts file contains this:\n{code}\n\"::osfamily\": Debian\n{code}\nThen both of those cases will fail. Should the lookup command allow that keys in the facts file are prefixed with {{::}}?\n\n", "created": "2015-12-14T01:51:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Possibly, but then only if facter writes such files.\nOtherwise it makes no sense at all since all keys are absolute.\n\n", "created": "2015-12-14T03:11:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Since hiera works as it should in puppet, the problem that is reported must be in the hiera command where it is setting up things, \"importing\" the facts etc. It must naturally simulate what puppet does.\n\nI am inclined to close this ticket with \"Won't do\" as the hiera command line tool has many other problems and is one of the pieces in hiera that causes a circular dependency between puppet and hiera (IIRC). The new {{puppet lookup}} command can handle the use case correctly, and it is what will be replacing the {{hiera_xxx}} functions and command line tool.", "created": "2016-02-02T15:17:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Closed as 'won't fix' after discussion and conclusion on the PR.", "created": "2016-02-21T16:23:00.000000"}], "components": [], "created": "2014-02-14T16:59:00.000000", "creator": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2560bd82"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyothr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_43170249574_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_20504392469"}], "description": "Assuming you have something like this in hiera.yaml:\n\n{code}\n:hierarchy:\n  - \"osfamily/%{::osfamily}\"\n{code}\n\nYou can call hiera from the command line with {{::osfamily=redhat}} and it will do lookups in {{osfamily/redhat.yaml}}, as expected. But nobody wants to give hiera every single fact one at a time, so the docs suggest doing something like this:\n\n{code}\nsudo facter -y > facts.yaml\nhiera LOOKUP -y facts.yaml\n{code}\n\nUnderstandably, facter's output doesn't include all the leading {{::}}'s, so you can never match {{%{::fact_name}}} like this. Since that seems to be the preferred way to refer to facts in hiera, that notation should be able to coexist with using facter's output on the command line.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53987", "fixedVersions": [], "id": "53987", "issueType": "Bug", "key": "HI-184", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "resolution": "Won't Fix", "resolutionDate": "2016-02-21T16:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Inconsistent handling of fully-qualified facts when called from the command line", "timeSpent": "PT0S", "updated": "2016-02-21T16:23:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "Sorry about that, it was 23323, I updated the issue with the proper links.", "created": "2014-02-15T08:27:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Is this similar to what's described at http://docs.puppetlabs.com/hiera/1/release_notes.html#feature-hiera-sub-lookups-from-within-interpolation-tokens ?", "created": "2014-02-15T10:23:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "It appears to be exactly http://projects.puppetlabs.com/issues/23301. The sub-lookup link still references looking up only strings (as far as I can tell). You still can't look up hashes or arrays.", "created": "2014-02-15T10:51:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "I'm still not sure I understand what you need here, do you just need to be able to do array concatenation/hash merging of top level values? Could you provide a bit more detail on how you would like to see different levels of the hierarchy merged?", "created": "2014-02-15T17:43:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "I suppose that I should have fleshed out the original example more:\n\nI need this to work properly:\n\n{code}\n== default.yaml ==\ntrusted_domains :\n  - sales.local\n  - dev.local\n\n== web_server/default.yaml ==\nweb_server::trusted_domains: %{hiera(trusted_domains)}\n\n{code}\n\nRight now, with hiera-1.3, this throws an exception with \"Can't convert Array into String\". While using hiera_array just returns nothing at all.\n\nhttp://docs.puppetlabs.com/hiera/1/variables.html#the-hiera-lookup-function indicates that the result of whatever you're looking up must be a string.", "created": "2014-02-16T08:50:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "All, any thoughts about this? It's really causing issues.", "created": "2014-03-05T12:07:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Could you provide a stacktrace when running a hiera query with the hierarchy that you've provided above?", "created": "2014-03-05T15:07:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "I've looked more closely into the implementation of the recursive hiera lookup, and I'm afraid that implementing this would be quite complex. As you've noted it's expected that return value of a recursive hiera lookup must be a string. The major problem for this is that the hiera interpolation call behaves very similarly to normal scope interpolation (aka, \"%{}\"). The behavior of scope interpolation is completely undefined for non-string values. If we can figure out the behavior of ordinary scope interpolation with arrays and hashes then we could logically extend this behavior to hiera lookups. However I'm not sure of the semantics myself, and I think that will be tricky to determine.", "created": "2014-03-05T17:18:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "Sorry I missed this somehow.\n\nI'll have to take a look at the code I suppose.\n\nWould it be possible to use a different method for searching the hierarchy?\n\nHow I feel that it should work:\n\n1) If trying to assign to an LHS value -> Must return a string\n2) If trying to assign to an RHS value -> Return whatever you want\n\nWhen running the code, the error that is returns makes it seem like it's *almost* doing this. It tries to convert an Array/Hash to a string and then bombs. If you just returned me the value that you're bombing on, I'd have what I wanted.\n", "created": "2014-03-16T16:29:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "Ok, changing hiera_interpolate in interpolate.rb to the following does what I expect:\n\n{code}\n  def hiera_interpolate(data, key, scope, extra_data)\n    value = Hiera::Backend.lookup(key, nil, scope, nil, :priority)\n    if value.is_a?(String)\n      return data.sub(METHOD_INTERPOLATION, value)\n    else\n      return value\n    end\n  end\n{code}\n\nI'm not sure about the far reaching ramifications of this, but it certainly does what I need it to do consistently.", "created": "2014-05-02T13:01:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "Had to update the code for Hiera 1.3.2. It took a while to dig through the recursion but the code has been submitted as a pull request.", "created": "2014-05-02T21:16:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "Any love here? This would be really great to have in the main line.", "created": "2014-06-12T10:34:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "[~accountid:557058:e0340dee-9d48-48c3-8c6a-02597af847c9], we've closed out the PR because it had several issues in the way the feature was implemented. The PR comments have more details. I'm going to leave this ticket open because the request is still valid. If work continues, please tie it back to this ticket as well.", "created": "2014-07-16T12:51:00.000000"}, {"author": "70121:79398512-5a0f-4a25-a228-253d45a3c42f", "body": "Following Adrien's comments on the original PR that backwards compatibility was an issue, I have attempted to add a new lookup function that preserves types and have created a new pull request with an implementation.", "created": "2014-08-28T01:08:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "This looks like a good solution to me. I'll roll it in and see if it works for what I'm doing.", "created": "2014-08-28T15:51:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "I've verified that this works as expected in my code base.", "created": "2014-09-01T14:14:00.000000"}, {"author": "70121:cf857223-88c8-4fac-86de-b4cccadb4909", "body": "I took at stab at updating Michael's code and submitted it as: https://github.com/puppetlabs/hiera/pull/213", "created": "2014-09-22T15:32:00.000000"}, {"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "Merged into master at [2ac44e5d|https://github.com/puppetlabs/hiera/commit/2ac44e5d34d9eb1b3a7b395ce74f22e97935d105]", "created": "2014-10-09T14:58:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "[~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a], this was merged into master 4 months ago. Did it pass review?", "created": "2015-01-29T04:45:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "[~accountid:557058:c7e2df03-377d-4bf0-9407-106b8483430d] I started working on it, bumped into my hiera ignorance, then got distracted by other work. I've unassigned myself.", "created": "2015-01-29T07:49:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:e0340dee-9d48-48c3-8c6a-02597af847c9] reported that he has applied this patch and it works well across all of his systems.", "created": "2015-01-29T09:25:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Resolved based on previous comments.", "created": "2015-01-30T09:14:00.000000"}], "components": ["Community"], "created": "2014-02-14T15:45:00.000000", "creator": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@bd48275"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy16f:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_10008_*:*_1_*:*_437338379_*|*_1_*:*_1_*:*_6669096749_*|*_10007_*:*_2_*:*_1895289520_*|*_10009_*:*_3_*:*_16863965412_*|*_5_*:*_1_*:*_4696516359_*|*_6_*:*_1_*:*_0"}], "description": "UPDATE:\n----\nThis ended up being implemented as follows:\n\nAdd a \"hiera function\" called {{alias}} that makes it possible to make one key in hiera data be an alias for another. This is different than just interpolating another key since that will result in a string.\n\n{code}\noriginal:\n  - 'a'\n  - 'b'\naliased: \"%{alias('original')}\"\n{code}\n\nThis returns an array with {{['a', 'b']}} for both the {{original}} and {{aliased}} keys.\nThe data entry that uses the {{alias}} function cannot combine it with post/prefix text.\n\n(The above is not clear unless looking at the final PR that was merged to master and reading the source code).\n\nORIGINAL TICKET TEXT:\n----\n\nSo, back in the old Redmine system, there was feature #23323 (http://projects.puppetlabs.com/issues/23323), which needed to be able to look up hashes and arrays from other parts of Hiera.\n\nI would like to reinstate that request here since the current solution only partially meets common data management consolidation needs.\n\nFor instance, consider this scenario:\n\n{code}\n== hiera.yaml ==\n%{module_name}/default\ndefault\n\n== default.yaml ==\ntrusted_domains :\n  - sales.local\n  - dev.local\n\n== web_server/default.yaml ==\nweb_server::trusted_domains:\n  - sales.local\n  - dev.local\n\n== email_server/default.yaml ==\nemail_server::trusted_domain:\n  - sales.local\n  - dev.local\n{code}\n\nNow this is obviously contrived, but it makes it very straightforward to have the defaults for each module on the system separated and not in a single huge file.\n\nEven in a single file, you would have the same issue with having to go through each and every field and make updates which would, of course, be quite error prone.\n\nIf we could simply reference the original hiera variable and have the array carried across the board, it would make everything \"just work\" with the opportunity of local overrides.", "environment": "ALL", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53986", "fixedVersions": ["HI 2.0.0"], "id": "53986", "issueType": "Improvement", "key": "HI-183", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "resolution": "Fixed", "resolutionDate": "2015-01-30T09:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Really need the ability to lookup hashes and arrays from other parts of Hiera.", "timeSpent": "PT0S", "updated": "2015-12-08T16:55:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2014-02-13T16:00:00.000000"}], "components": ["Community"], "created": "2014-02-13T12:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@636bc810"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt0gv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4241193889_*|*_6_*:*_1_*:*_0"}], "description": "h2. (hi-149)(packaging) Remove Fedora 18 from the default package builds\n\n * Author:  <>\n * Company: \n * Github ID: [shrug|https://github.com/shrug]\n * [Pull Request 180 Discussion|https://github.com/puppetlabs/hiera/pull/180]\n * [Pull Request 180 File Diff|https://github.com/puppetlabs/hiera/pull/180/files]\n\nh2. Pull Request Description\n----\n\nFedora 18 reached end-of-life on 1/14/14. \nThis removes Fedora 18 from the list of default package builds.\n\n----\n(webhooks-id: 1c369113203ce65742addd221136e310)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53646", "fixedVersions": [], "id": "53646", "issueType": "Task", "key": "HI-182", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-04-03T16:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (180): (hi-149)(packaging) Remove Fedora 18 from the default package builds - shrug", "timeSpent": "PT0S", "updated": "2014-04-03T16:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2014-02-13T16:00:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "haus commented:\n\n:+1:\n", "created": "2014-03-05T12:50:00.000000"}], "components": ["Community"], "created": "2014-02-13T12:55:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6f0bbabb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt0gn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4239378336_*|*_6_*:*_1_*:*_0"}], "description": "h2. (hi-149)(packaging) Remove Fedora 18 from the default package builds\n\n * Author:  <>\n * Company: \n * Github ID: [shrug|https://github.com/shrug]\n * [Pull Request 179 Discussion|https://github.com/puppetlabs/hiera/pull/179]\n * [Pull Request 179 File Diff|https://github.com/puppetlabs/hiera/pull/179/files]\n\nh2. Pull Request Description\n----\n\nFedora 18 reached end-of-life on 1/14/14. \nThis removes Fedora 18 from the list of default package builds.\n\n----\n(webhooks-id: 31cf5e5382591d3087698e78504b6ad3)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53553", "fixedVersions": [], "id": "53553", "issueType": "Task", "key": "HI-181", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-04-03T15:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (179): (hi-149)(packaging) Remove Fedora 18 from the default package builds - shrug", "timeSpent": "PT0S", "updated": "2014-04-03T15:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Spec tickets don't require QA review", "created": "2015-02-12T17:25:00.000000"}], "components": ["Community"], "created": "2014-02-10T18:09:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@43c7f552"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysz6n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4479718551_*|*_6_*:*_1_*:*_0"}], "description": "h2. Fixes to move hiera close to Puppet spec utility\n\n * Author: Matthaus Owens <mlitteken@gmail.com>\n * Company: Puppet Labs\n * Github ID: [haus|https://github.com/haus]\n * [Pull Request 177 Discussion|https://github.com/puppetlabs/hiera/pull/177]\n * [Pull Request 177 File Diff|https://github.com/puppetlabs/hiera/pull/177/files]\n\nh2. Pull Request Description\n----\n\nThis commit brings over a couple of improvements from Puppet to enable the use of an almost identical jenkins job to Puppet stable. This includes laying down junit compatible output for jenkins and laying down the order of tests the job ran against to help narrow order dependent test failures.\n\n----\n(webhooks-id: dccf3d5c33c884fa28bf4b8873594341)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53948", "fixedVersions": [], "id": "53948", "issueType": "Task", "key": "HI-180", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-04-03T15:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (177): Fixes to move hiera close to Puppet spec utility - haus", "timeSpent": "PT0S", "updated": "2015-02-12T17:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "Merged into stable in c115960d9e295e272219ab48f6d6febc23eda05a", "created": "2014-02-10T15:35:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "In the course of this work, we discovered that specs weren't running against ruby 2. PR https://github.com/puppetlabs/hiera/pull/177 was opened to help get specs going using our modern spec boxes.", "created": "2014-02-10T18:16:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "It also turns out that there were no acceptance jobs running against rhel7. PR https://github.com/puppetlabs/hiera/pull/178 was opened to get that in place.", "created": "2014-02-10T18:21:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "Merged PR 177 into stable in [1ee0f0|https://github.com/puppetlabs/hiera/commit/1ee0f03a6fee6b91930e17aa0b632ca200b06db7]", "created": "2014-02-10T18:25:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "Merged PR 178 into stable in[f7f997c|https://github.com/puppetlabs/hiera/commit/f7f997c3f80df0f58252b26b0811a6614417bcdf]", "created": "2014-02-10T18:37:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "A new spec job has been created for hiera stable. It lives here: https://jenkins.puppetlabs.com/view/Hiera/job/Hiera-stable", "created": "2014-02-10T18:38:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "New spec and acceptance jobs setup and run. THEY ARE GREEEEEEEEEN!!!!! and faster", "created": "2014-02-10T18:56:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Released in Hiera 1.3.2-rc1", "created": "2014-02-11T15:39:00.000000"}], "components": [], "created": "2014-02-10T15:34:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@16fbb791"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysyqv:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7744_*|*_10007_*:*_1_*:*_2014684_*|*_5_*:*_2_*:*_84692980_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53993", "fixedVersions": ["HI 1.3.2"], "id": "53993", "issueType": "Task", "key": "HI-179", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2014-02-11T15:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add RHEL 7 support for Hiera packaging", "timeSpent": "PT0S", "updated": "2014-02-12T11:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "Cherry picked into stable in commit ed31186eecaf2dc62d155c81d25e066d85a86868", "created": "2014-02-10T14:53:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Released in Hiera 1.3.2-rc1", "created": "2014-02-11T15:39:00.000000"}], "components": [], "created": "2014-02-10T14:51:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b6dc1a4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysyzz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_97664_*|*_5_*:*_1_*:*_89185616_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53769", "fixedVersions": ["HI 1.3.2"], "id": "53769", "issueType": "Bug", "key": "HI-178", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Done", "resolutionDate": "2014-02-11T15:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update Hiera Master Windows/Solaris jobs to vcloud", "timeSpent": "PT0S", "updated": "2014-02-11T15:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:04:00.000000"}], "components": [], "created": "2014-02-10T12:02:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3daedb3b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysyvr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_99341468_*|*_5_*:*_1_*:*_9588389854_*|*_6_*:*_1_*:*_0"}], "description": "Send the release email, do a PSA on #puppet", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53618", "fixedVersions": [], "id": "53618", "issueType": "Sub-task", "key": "HI-177", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2014-02-11T15:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Send out the announcements", "timeSpent": "PT0S", "updated": "2014-06-02T16:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request (CPR-12) Ensure hiera works with alternatives on debian has been closed.", "created": "2014-02-07T15:04:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2014-02-07T16:00:00.000000"}], "components": ["Community"], "created": "2014-02-07T15:02:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b9e5a19"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysygv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3353021469_*|*_6_*:*_1_*:*_0"}], "description": "h2. (CPR-12) Ensure hiera works with alternatives on debian\n\n * Author: Matthaus Owens <mlitteken@gmail.com>\n * Company: Puppet Labs\n * Github ID: [haus|https://github.com/haus]\n * [Pull Request 176 Discussion|https://github.com/puppetlabs/hiera/pull/176]\n * [Pull Request 176 File Diff|https://github.com/puppetlabs/hiera/pull/176/files]\n\nh2. Pull Request Description\n----\n\nPreviously the hiera install.rb call in the debian rules did not specify the\nruby binary to use for /usr/bin/hiera. This meant that on wheezy, with a\ndefault ruby of ruby 1.9.3, it would have a shebang of /usr/bin/ruby1.9.1.\nSimilarly on a platform with a default of ruby 1.8, the shebang would be\n/usr/bin/ruby1.8. This means that if the user later updates alternatives to\npoint to a different ruby, the binary will no longer function as expected. This\ncommit updates the ruby that will be inserted as the shebang to /usr/bin/ruby\nso that alternatives will be more correctly handled.\n\n----\n(webhooks-id: 8e5c9b3aa386ccbed351b94b10ab5a66)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53537", "fixedVersions": [], "id": "53537", "issueType": "Task", "key": "HI-175", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-03-18T11:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (176): (CPR-12) Ensure hiera works with alternatives on debian - haus", "timeSpent": "PT0S", "updated": "2014-03-18T11:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request (CPR-12) Ensure hiera works with alternatives on debian has been closed.", "created": "2014-02-07T15:02:00.000000"}], "components": ["Community"], "created": "2014-02-07T15:02:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7622b420"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysygn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3353080067_*|*_6_*:*_1_*:*_0"}], "description": "h2. (CPR-12) Ensure hiera works with alternatives on debian\n\n * Author: Matthaus Owens <mlitteken@gmail.com>\n * Company: Puppet Labs\n * Github ID: [haus|https://github.com/haus]\n * [Pull Request 175 Discussion|https://github.com/puppetlabs/hiera/pull/175]\n * [Pull Request 175 File Diff|https://github.com/puppetlabs/hiera/pull/175/files]\n\nh2. Pull Request Description\n----\n\nPreviously the hiera install.rb call in the debian rules did not specify the\nruby binary to use for /usr/bin/hiera. This meant that on wheezy, with a\ndefault ruby of ruby 1.9.3, it would have a shebang of /usr/bin/ruby1.9.1.\nSimilarly on a platform with a default of ruby 1.8, the shebang would be\n/usr/bin/ruby1.8. This means that if the user later updates alternatives to\npoint to a different ruby, the binary will no longer function as expected. This\ncommit updates the ruby that will be inserted as the shebang to /usr/bin/ruby\nso that alternatives will be more correctly handled.\n\n----\n(webhooks-id: 4a161166af6851f1d56c795072e1fae5)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54039", "fixedVersions": [], "id": "54039", "issueType": "Task", "key": "HI-174", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-03-18T11:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (175): (CPR-12) Ensure hiera works with alternatives on debian - haus", "timeSpent": "PT0S", "updated": "2014-03-18T11:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "attachments": [], "comments": [{"author": "5cc6de5ccf9b780e6a3a30bd", "body": "I just encountered this same problem with hiera 1.3.1. Querying hiera from CLI didn't work without :: at the front of the key-name. The last version that worked without :: seemed to be 1.1.2 as with 1.2.1 same problem occurred. \nFor a test, I removed leading :: from hiera.yaml fqdn in hierarchy definition and the latest version of hiera did work just fine.", "created": "2014-02-07T08:58:00.000000"}, {"author": "557058:ff41d429-eab9-44d0-975f-508fbab07969", "body": "Looks like:\nhttp://docs.puppetlabs.com/hiera/1/command_line.html#command-line-variables hasn't been updated,\n\nBUT:\n\nhttp://docs.puppetlabs.com/hiera/1/complete_example.html#making-decisions-and-expressing-them-in-hiera\nhas been.  ( look for the ntp cli example. )", "created": "2014-02-07T09:07:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "ping [~accountid:557058:0e68498a-af24-40c4-a3ec-8d424adeeabb] to resolve the docs<->reality discrepancy", "created": "2014-02-07T09:39:00.000000"}, {"author": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "body": "Thanks, [~accountid:5cc6de5ccf9b780e6a3a30bd] and [~accountid:557058:ff41d429-eab9-44d0-975f-508fbab07969]! You are absolutely right. I'll update the [command line variables|http://docs.puppetlabs.com/hiera/1/command_line.html#command-line-variables] section today to reflect the change.", "created": "2014-02-10T12:35:00.000000"}, {"author": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "body": "So after some additional investigation it appears that the behavior here is not quite as cut and dry as I had hoped. Here's what I've figured out:\n\n* The leading \"{{::}}\" is recommended but optional when referring to facts in hiera.yaml.\n* As pointed out in this ticket, command line variables have to match variables in the hierarchy exactly, including a leading \"{{::}}\" (if present).\n* That's fine if you're specifying each fact individually on the command line, but the docs recommend passing facts to hiera _en masse_ with something like \"{{facter --yaml > facts.yaml && hiera LOOKUP --yaml facts.yaml}}\"\u2014which won't work if hiera is expecting your facts to look like \"{{::factname}}\". ", "created": "2014-02-11T16:53:00.000000"}, {"author": "623c1784a9575800695ad077", "body": "Shifting perspective from a documentation angle to an education angle, this is pretty bad behavior. Is there a specific reason that hiera doesn't handle this the way humans seem to expect it to? e.g. hiera cli doesn't care/enforce whether you use ::fqdn or fqdn?", "created": "2014-02-21T11:13:00.000000"}, {"author": "623c1784a9575800695ad077", "body": "Via [~accountid:557058:0e68498a-af24-40c4-a3ec-8d424adeeabb], there is a ticket that reflects my concerns: HI-184", "created": "2014-02-21T11:26:00.000000"}], "components": [], "created": "2014-02-07T08:52:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@71d5bcc7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysy1j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_269214552_*|*_3_*:*_1_*:*_774760386_*|*_6_*:*_1_*:*_0"}], "description": "Specifying top level facts on the command line used to be: <br />\n`hiera LOOKUP  fqdn=client.local -d`\n\nSeems like that it now needs to be: <br />\n`hiera LOOKUP  ::fqdn=client.local -d`\n\n\nThe former is supported by documentation such as:\n<http://docs.puppetlabs.com/hiera/1/command_line.html#command-line-variables>\n<http://docs.puppetlabs.com/hiera/1/complete_example.html#making-decisions-and-expressing-them-in-hiera>\n\n\nHowever, it doesn't seem to work on 1.2.1 command line.  The `::` notation does.\n\nBackground:\n\nI'm testing hiera for implementation now, and had a vagrant system w/ 1.1.2 (Puppet 3.0.2) .     My production server has 1.2.1.  Puppet 3.1.1.  \n(yes, need to update the vagrant box.)\n\n\nI've been looking at the docs on <http://docs.puppetlabs.com/hiera/1/complete_example.html>\n\nand had hiera.yaml as:\n\n    ---\n    :backends: yaml\n    :yaml:\n      :datadir: /etc/puppet/hiera\n    :hierarchy:\n      - node/%{::fqdn}\n      - common\n\n\nI have to test the way it works in puppet itself, but this seems to be a change, from the existing documentation.\n\n\nThis isn't the same issue, but it might have happened as a result of: \n<https://projects.puppetlabs.com/issues/17434>\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53947", "fixedVersions": [], "id": "53947", "issueType": "Bug", "key": "HI-173", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Fixed", "resolutionDate": "2014-02-19T11:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Command line variable specification seems to have changed between 1.1.2 & 1.2.1", "timeSpent": "PT0S", "updated": "2014-02-21T11:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "What version of hiera was this seen on (in the exported version, not the original)? This should have been mostly resolved in Hiera 1.3.0. There is still a minor bug with alternatives, for which I've opened a pull in https://github.com/puppetlabs/hiera/pull/176/files to resolve.", "created": "2014-02-07T15:04:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "Merged in 16285ea. Will be released in the next Hiera.", "created": "2014-02-07T15:05:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Released in Hiera 1.3.2-rc1", "created": "2014-02-11T15:39:00.000000"}], "components": [], "created": "2014-02-07T02:25:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@780b557f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysxzb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_45556541_*|*_10007_*:*_1_*:*_3595640_*|*_5_*:*_1_*:*_344080060_*|*_6_*:*_1_*:*_0"}], "description": "I manually install hiera_1.0.0-0.1rc3_all.deb  with Puppet 2.7.17 from apt.puppetlabs.com\n\n/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- hiera (LoadError)\n\tfrom /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'\n\tfrom /usr/bin/hiera:18:in `<main>'\n\nPuppet pulled in ruby1.8, so something is wrong with Hiera. \n\nIf you change \n#!/usr/bin/env ruby to\n\n#!/usr/bin/ruby18 in /usr/bin/hiera, all is well. \n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54037", "fixedVersions": ["HI 1.3.2"], "id": "54037", "issueType": "Bug", "key": "HI-176", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Done", "resolutionDate": "2014-02-11T15:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera on wheezy doesn't really work out", "timeSpent": "PT0S", "updated": "2014-02-11T15:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:22:00.000000"}], "components": [], "created": "2014-02-05T15:19:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@43c200c2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx4f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_519551681_*|*_3_*:*_1_*:*_77156_*|*_5_*:*_2_*:*_9588855124_*|*_6_*:*_2_*:*_505622"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53946", "fixedVersions": [], "id": "53946", "issueType": "Sub-task", "key": "HI-172", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-11T15:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2014-06-02T16:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:03:00.000000"}], "components": [], "created": "2014-02-05T15:19:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@40416e5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx47:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_518980615_*|*_3_*:*_1_*:*_140622_*|*_4_*:*_1_*:*_4982_*|*_5_*:*_1_*:*_9588753069_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53832", "fixedVersions": [], "id": "53832", "issueType": "Sub-task", "key": "HI-171", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-06-02T16:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update the downloads page", "timeSpent": "PT0S", "updated": "2014-06-02T16:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "We're not going to merge the tag into pe-hiera until the final release", "created": "2014-02-11T15:38:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:22:00.000000"}], "components": [], "created": "2014-02-05T15:19:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1919dad0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx3z:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_519548879_*|*_5_*:*_2_*:*_9589106330_*|*_6_*:*_2_*:*_335323"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53768", "fixedVersions": [], "id": "53768", "issueType": "Sub-task", "key": "HI-170", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Won't Fix", "resolutionDate": "2014-02-11T15:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge into pe branch", "timeSpent": "PT0S", "updated": "2014-06-02T16:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:03:00.000000"}], "components": [], "created": "2014-02-05T15:19:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7b24f46a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx3r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_518736834_*|*_3_*:*_1_*:*_246455_*|*_5_*:*_1_*:*_9588889753_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53701", "fixedVersions": [], "id": "53701", "issueType": "Sub-task", "key": "HI-169", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-11T15:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push the tag, push out updated master/stable branches", "timeSpent": "PT0S", "updated": "2014-06-02T16:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:03:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7a236b8d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx3j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_518736691_*|*_3_*:*_1_*:*_243445_*|*_5_*:*_1_*:*_9588890018_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53645", "fixedVersions": [], "id": "53645", "issueType": "Sub-task", "key": "HI-168", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-11T15:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge tag into the right branch", "timeSpent": "PT0S", "updated": "2014-06-02T16:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:02:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T16:03:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2a4cb2da"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx3b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_516349373_*|*_3_*:*_1_*:*_2261338_*|*_5_*:*_1_*:*_9589230299_*|*_6_*:*_2_*:*_24045"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53616", "fixedVersions": [], "id": "53616", "issueType": "Sub-task", "key": "HI-167", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-11T15:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2014-06-02T16:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:0e68498a-af24-40c4-a3ec-8d424adeeabb", "attachments": [], "comments": [], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2e8ef6be"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx33:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_421748005_*|*_10007_*:*_1_*:*_82590488_*|*_3_*:*_1_*:*_1683206_*|*_4_*:*_1_*:*_12056602_*|*_6_*:*_2_*:*_7243"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53536", "fixedVersions": [], "id": "53536", "issueType": "Sub-task", "key": "HI-166", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-02-11T15:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2014-02-11T15:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Thumbs up from [~accountid:623a4c3b4a57610068e6782b] and [~accountid:557058:372bc64a-3ef7-46ac-9a0a-50bcf4819b9c] and myself", "created": "2014-02-11T11:30:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:57:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@611b5225"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx2v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_504695689_*|*_5_*:*_1_*:*_9602824646_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54035", "fixedVersions": [], "id": "54035", "issueType": "Sub-task", "key": "HI-165", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-11T11:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting", "timeSpent": "PT0S", "updated": "2014-06-02T15:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "To Test:\n\n  * RHEL7\n  * Gem on windows\n  * Gem on any linux\n\n\nThose platforms were chosen because they had meaningful changes in this release.", "created": "2014-02-10T16:43:00.000000"}, {"author": "557058:372bc64a-3ef7-46ac-9a0a-50bcf4819b9c", "body": "Tested on Archlinux and Windows 2012 with Ruby 1.9.3:\n  - Installed the gem.\n  - Ran simple value, array, and hash queries.\n  - Ran merged value, array, and hash queries.\n  - Queries with hierarchies using interpolation.\n  - Used both the YAML and JSON backends.\n  - Uninstalled the gem.\n\nNo issues found.", "created": "2014-02-10T18:33:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "HI-114 still outstanding. No man pages on RHEL7", "created": "2014-02-11T11:12:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "Tested on RHEL7, yaml and json lookups, interpolation in hierarchy, hiera() lookups in values. Uninstalled package.\n\nEverything looks good.", "created": "2014-02-11T11:23:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:57:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6c6a34f1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx2n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_434693431_*|*_3_*:*_1_*:*_69376815_*|*_5_*:*_1_*:*_9603222089_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_224522"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53992", "fixedVersions": [], "id": "53992", "issueType": "Sub-task", "key": "HI-164", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-11T11:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://builds.puppetlabs.lan/hiera/1.3.2-rc1/", "created": "2014-02-10T16:03:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:57:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@e39fe60"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx2f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_432295483_*|*_3_*:*_1_*:*_459131_*|*_5_*:*_1_*:*_9672810112_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1936943"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53985", "fixedVersions": [], "id": "53985", "issueType": "Sub-task", "key": "HI-163", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-10T16:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create package", "timeSpent": "PT0S", "updated": "2014-06-02T15:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "The tag is staged on my computer, I'll push it out when we're ready to make the packages live", "created": "2014-02-10T15:55:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:56:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1347d582"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx27:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_432294116_*|*_5_*:*_1_*:*_9673302067_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1902966"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53945", "fixedVersions": [], "id": "53945", "issueType": "Sub-task", "key": "HI-162", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-10T15:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release", "timeSpent": "PT0S", "updated": "2014-06-02T15:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:56:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@66c5617d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx1z:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_432286702_*|*_3_*:*_1_*:*_378921_*|*_5_*:*_1_*:*_9587950192_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_86880487"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53830", "fixedVersions": [], "id": "53830", "issueType": "Sub-task", "key": "HI-161", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-11T15:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare puppet-announcement", "timeSpent": "PT0S", "updated": "2014-06-02T15:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "Added 1.3.2 RC version and 1.3.3 version", "created": "2014-02-10T15:42:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:54:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3060a5e5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx1r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_432274290_*|*_3_*:*_1_*:*_1028514_*|*_5_*:*_1_*:*_9673937483_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_135980"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53767", "fixedVersions": [], "id": "53767", "issueType": "Sub-task", "key": "HI-160", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-10T15:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is a new version created for the next version in the series?", "timeSpent": "PT0S", "updated": "2014-06-02T15:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "See the comment in HI-158 for an explanation of some of the stranger commits and issues referenced.", "created": "2014-02-10T15:05:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:54:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2e8a960f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx1j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_420874962_*|*_3_*:*_1_*:*_108230_*|*_5_*:*_1_*:*_9676108222_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_10270691"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53699", "fixedVersions": [], "id": "53699", "issueType": "Sub-task", "key": "HI-159", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-10T15:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every bug targeted at the release?", "timeSpent": "PT0S", "updated": "2014-06-02T15:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "There are references to HI-7, CPR-12, and Redmine #23140. \n\n  * CPR-12 was moved to be HI-176\n  * HI-7 is incomplete and still in ready for engineering, the single commit is a small testing change\n  * #23140 was a cherry pick and has been cloned into Jira as HI-178\n\nThere are several other commits marked as (maint).", "created": "2014-02-10T15:03:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:51:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42a4ab0d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx1b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_420873001_*|*_3_*:*_1_*:*_1439264_*|*_5_*:*_1_*:*_9676031524_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_8834224"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53644", "fixedVersions": [], "id": "53644", "issueType": "Sub-task", "key": "HI-158", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-10T15:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a bug targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2014-06-02T15:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "The solaris acceptance job hadn't run for a month. It is now tied to be a downstream from the linux acceptance job. The stable branch has no windows acceptance job (it looks to be waiting for HI-8).\n\nRan the solaris acceptance job and it passed on the stable head. All other jobs had run on the latest stable commit.", "created": "2014-02-10T15:21:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:51:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@bc7befd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx13:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_420872656_*|*_3_*:*_1_*:*_3570096_*|*_5_*:*_1_*:*_9674958833_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_7774289"}], "description": "All tests (spec, acceptance) should be passing on all platforms.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53614", "fixedVersions": [], "id": "53614", "issueType": "Sub-task", "key": "HI-157", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-10T15:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure tests are passing", "timeSpent": "PT0S", "updated": "2014-06-02T15:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:51:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@17bf6fb1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysx0v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_420275578_*|*_5_*:*_1_*:*_9686896089_*|*_6_*:*_1_*:*_0"}], "description": "Do sub-tickets here match steps in https://confluence.puppetlabs.com/display/DEL/FOSS+Release+Process? And do those steps need updating for any recent tooling changes?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53535", "fixedVersions": [], "id": "53535", "issueType": "Sub-task", "key": "HI-156", "labels": [], "originalEstimate": "PT0S", "parent": "54032", "parentSummary": "Hiera 1.3.2-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-10T12:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is checklist current", "timeSpent": "PT0S", "updated": "2014-06-02T15:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Released in Hiera 1.3.2-rc1", "created": "2014-02-11T15:39:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:47:00.000000"}], "components": [], "created": "2014-02-05T15:18:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4de4a45a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyskq7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_28901_*|*_3_*:*_1_*:*_91033155_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_428621419"}], "description": "See https://confluence.puppetlabs.com/display/DEL/FOSS+Release+Process", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54032", "fixedVersions": ["HI 1.3.2"], "id": "54032", "issueType": "Task", "key": "HI-155", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-02-11T15:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.2-rc1 Release", "timeSpent": "PT0S", "updated": "2015-01-30T06:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2014-01-24T17:06:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request Apply the RHEL7 work and merge it into stable has been closed.", "created": "2014-02-06T16:13:00.000000"}], "components": ["Community"], "created": "2014-01-24T14:59:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@936a682"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysrkv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5959902878_*|*_6_*:*_1_*:*_0"}], "description": "h2. Apply the RHEL7 work and merge it into stable\n\n * Author: Ryan McKern <ryan@orangefort.com>\n * Company: Puppet Labs\n * Github ID: [mckern|https://github.com/mckern]\n * [Pull Request 174 Discussion|https://github.com/puppetlabs/hiera/pull/174]\n * [Pull Request 174 File Diff|https://github.com/puppetlabs/hiera/pull/174/files]\n\nh2. Pull Request Description\n----\n\nAs per @haus the updates for building Hiera packages on RHEL7 have been cherry-picked and applied to the `stable` branch.\n\n----\n(webhooks-id: 195727e75898b629611f1b2f9a79c2bc)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53672", "fixedVersions": [], "id": "53672", "issueType": "Task", "key": "HI-153", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-04-03T15:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (174): Apply the RHEL7 work and merge it into stable - mckern", "timeSpent": "PT0S", "updated": "2014-04-03T15:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "623c0d1a761efb0069ce02d6", "body": "Maybe it'll be clean to export a calling_class_location pseudo-variable that represents the path inside the module. It's actually the way :: is represented in the filesystem.\n\nExample :\n{code}\nprofile::ssh::server\n{code}\nis stored in the module {{profile}} and folder {{ssh/server}}. The pseudo-variables might be :\n{code}\ncalling_module = \"profile\"\ncalling_class = \"profile::ssh::server\"\ncalling_class_location = \"ssh/server\"\n{code}\n\nShould work ...", "created": "2014-05-02T14:49:00.000000"}, {"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "Is this resolved by PUP-3462?", "created": "2015-01-22T08:30:00.000000"}], "components": [], "created": "2014-01-23T17:49:00.000000", "creator": "557058:6ef5069f-2163-4323-97cc-c4705f524b0b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3f110a4d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysqzz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Windows"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_32004512591_*|*_6_*:*_1_*:*_0"}], "description": "My organization has a pre-existing hiera configuration which uses {calling_class}.yaml configuration files, like:\n\nclasses/base::openldap.yaml\n\nWhich get pulled into hiera via this path in the hierarchy.\n\n:hierarchy:\n...\n  - \"%{environment}/classes/%{calling_class}\"\n\nThis does not work on Windows. Windows does not support colons in filenames so the .yaml can't even be checked out from source control. This presents issues when developing our puppet manifests on windows and sharing them with a Vagrant VM, for example.\n\nIt'd be really nice if hiera supported reading calling_class files from files which did not use colons as separators. Perhaps it could look up the class via a 'backup' parameter if the colon version does not exist? (and it'd have to do this on every OS.. since the problem is a directory which is checked out on both windows and linux.. perhaps could be an option?)\n\nMaybe a new field, {%calling_class_safe} which reads from profile_base.yaml instead of profile::base.yaml? ? I'm not sure what the cleanest fix is.\n\nthanks-", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53670", "fixedVersions": ["HI 2.0.0"], "id": "53670", "issueType": "Improvement", "key": "HI-152", "labels": ["windows"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:6ef5069f-2163-4323-97cc-c4705f524b0b", "resolution": "Duplicate", "resolutionDate": "2015-01-29T03:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "%{calling_class} yaml paths do not function on windows", "timeSpent": "PT0S", "updated": "2015-01-29T03:57:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09c4407f-9f13-485c-8d14-e7a36ed61b66", "attachments": [], "comments": [{"author": "557058:09c4407f-9f13-485c-8d14-e7a36ed61b66", "body": "After rethinking the issue I realized that this is consistent with the resolution order and the current implementation of data bindings in puppet 3.\n\nSometimes, I would like to change the default behavior of data bindings from hiera() to hiera_array() or hiera_hash().\nI need the freedom to arrange the data however best suits my needs and not the way puppet expects it to be.\n\nThis jira can be closed.", "created": "2014-01-24T02:55:00.000000"}], "components": [], "created": "2014-01-23T10:48:00.000000", "creator": "557058:09c4407f-9f13-485c-8d14-e7a36ed61b66", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e143533"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysqlz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_74159878_*|*_6_*:*_1_*:*_0"}], "description": "Given this hiera config:\n{code:none}\nbash-4.1# cat /etc/puppet/hiera.yaml \n---\n\n:backends:\n    - yaml\n\n:hierarchy:\n    - one\n    - two\n\n:yaml:\n    :datadir: '/etc/puppet/hieradata'\n\n:merge_behavior: deeper\n\n...\n{code}\n\nand this values:\n{code:none}\nbash-4.1# cat /etc/puppet/hieradata/{one,two}.yaml\n---\n\nfoo::message: one\n\n...\n---\n\nfoo::message: two\n\n...\n{code}\n\nif I run this code:\n{code:none}\nbash-4.1# cat fail.pp \nclass foo ( $message = hiera_array('foo::message') ) { notify { $message: } }\ninclude ::foo\n{code}\n\nit produces unexpected output:\n{code:none}\nbash-4.1# puppet apply fail.pp \nNotice: Compiled catalog for 435d243ccf29.ofi.softonic.lan in environment production in 0.48 seconds\nNotice: one\nNotice: /Stage[main]/Foo/Notify[one]/message: defined 'message' as 'one'\nNotice: Finished catalog run in 0.05 seconds\n{code}\n\nwhereas if I run this other code:\n{code:none}\nbash-4.1# cat win.pp           \nclass foo {\n  $message = hiera_array('foo::message')\n  notify { $message: }\n}\ninclude ::foo\n{code}\n\nIt produces the expected output:\n{code:none}\nbash-4.1# puppet apply win.pp \nNotice: Compiled catalog for 435d243ccf29.ofi.softonic.lan in environment production in 0.35 seconds\nNotice: one\nNotice: /Stage[main]/Foo/Notify[one]/message: defined 'message' as 'one'\nNotice: two\nNotice: /Stage[main]/Foo/Notify[two]/message: defined 'message' as 'two'\nNotice: Finished catalog run in 0.07 seconds\n{code}\n\nShouldn't it be the same output in both situations?", "environment": "{code:none}\nbash-4.1# puppet --version\n3.4.2\n{code}\n\n{code:none}\nbash-4.1# hiera --version\n1.3.0\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53943", "fixedVersions": [], "id": "53943", "issueType": "New Feature", "key": "HI-151", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:09c4407f-9f13-485c-8d14-e7a36ed61b66", "resolution": "Duplicate", "resolutionDate": "2014-01-24T07:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera_array() fails when used in class parameters", "timeSpent": "PT0S", "updated": "2014-01-24T07:24:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request (RE-816) Add initial support for building in a RHEL 7 mock has been closed.", "created": "2014-01-22T18:13:00.000000"}], "components": ["Community"], "created": "2014-01-22T18:12:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6618ad76"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysqhb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6123132487_*|*_6_*:*_1_*:*_0"}], "description": "h2. (RE-816) Add initial support for building in a RHEL 7 mock\n\n * Author: Ryan McKern <ryan@orangefort.com>\n * Company: Puppet Labs\n * Github ID: [mckern|https://github.com/mckern]\n * [Pull Request 173 Discussion|https://github.com/puppetlabs/hiera/pull/173]\n * [Pull Request 173 File Diff|https://github.com/puppetlabs/hiera/pull/173/files]\n\nh2. Pull Request Description\n----\n\nBuilding in an x86_64 mock, since RHEL has not provided a 32-bit release.\n\n----\n(webhooks-id: 85eeba35c9e82696920897b7a679b8d6)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54029", "fixedVersions": [], "id": "54029", "issueType": "Task", "key": "HI-150", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-04-03T16:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (173): (RE-816) Add initial support for building in a RHEL 7 mock - mckern", "timeSpent": "PT0S", "updated": "2014-04-03T16:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "https://github.com/puppetlabs/hiera/pull/179 merged in b6f3e67\n\nhttps://github.com/puppetlabs/hiera/pull/180 merged in df5785c", "created": "2014-03-19T11:30:00.000000"}, {"author": "557058:618f6155-e13f-4a8b-ab11-35c9f65fbb2f", "body": "[~accountid:557058:11a50a90-5585-4229-994a-72322be4a7d7] ???", "created": "2014-03-19T15:36:00.000000"}], "components": [], "created": "2014-01-22T10:46:00.000000", "creator": "557058:ab1874a9-45ab-4efc-91aa-5200c165b2c4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@321f6abb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqhaf:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_3206054_*|*_1_*:*_1_*:*_1908333160_*|*_10007_*:*_1_*:*_2925410165_*|*_3_*:*_1_*:*_3747210_*|*_5_*:*_1_*:*_5622277180_*|*_6_*:*_1_*:*_0"}], "description": "Fedora 18 reached end-of-life on January 14, 2014. Remove Fedora 18 from the list of default package build mocks. The F18 yum repos will be removed from yum.puppetlabs.com on March 18.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53534", "fixedVersions": ["HI 1.3.3"], "id": "53534", "issueType": "Task", "key": "HI-149", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:ab1874a9-45ab-4efc-91aa-5200c165b2c4", "resolution": "Fixed", "resolutionDate": "2014-03-19T12:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "(packaging) Remove Fedora 18 from default build targets", "timeSpent": "PT0S", "updated": "2014-05-23T14:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "623c0c1d50bb2b0070b6afda", "body": "I would like to see this as well. I think my requirements are a bit less stringent. I'd like to see the yaml backend support multiple data dirs.\n\nRight now I hack it by setting the datadir to something way up the filesystem such as '/etc/puppet/'\nThen I reach into two separate locations by using the hierarchy. This is awesome for keeping the insecure data with the puppet code and the secure data in a separate directory/repository with a lower surface area.\n\nI would like to simply provide a list of data directories, and have hiera run the entire hierarchy on them in order.\n", "created": "2014-05-28T01:57:00.000000"}, {"author": "557058:8a143d5d-8214-422d-9972-04c2e2082058", "body": "+1 have the same requirement as above comment. ", "created": "2014-07-11T05:59:00.000000"}, {"author": "557058:0d2e21b5-05ff-4051-bd58-ae4cda0a62a5", "body": "+1 I have the same requirement of isolating data and to don't repeat it in every environment.\n\nMy current workaround at the moment, was to clone the yaml_backend.rb into yaml_defaults_backend.rb and define it with other datadir.\n\n--\n:backends:\n  - yaml\n  - yaml_defaults\n  - module_data\n:hierarchy:\n  - \"%{clientcert}\"\n  - \"%{environment}\"\n  - common\n  - defaults\n  - credentials\n\n:yaml:\n  :datadir: /etc/puppet/environments/%{environment}/hiera\n\n:yaml_defautls:\n  :datadir: /etc/puppet/hiera\n\n\n ", "created": "2014-12-09T07:24:00.000000"}, {"author": "623c096dbef8a60068c795f0", "body": "+1 - I just assumed multiple backends with Hiera meant multiple backends of the same type. Until I tried it...\n\nI'll just workaround as Spencer did, but would like to see this implemented", "created": "2015-04-07T17:41:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:2a48617a-4923-4071-bfd6-969a37c7022c", "body": "FYI, the way I work around this is to clone each of the repos that needs to contribute configuration into the same directory, then prefix the hierarchy to make it work..\n\n{noformat}\n---\n:backends: [ yaml ]\n:hierarchy:\n  - \"hieradata/hosts/%{::hostname}\"\n  - \"hieradata/roles/%{::role}\"\n  - \"hieradata/environments/%{::environment}\"\n  - \"hieradata/networks/%{::network}\"\n  - \"hieradata/virtual/%{::is_virtual}\"\n  - \"hieradata/virtual/%{::virtual}\"\n  - \"hieradata/common\"\n  - \"global-hieradata/roles/%{::role}\"\n  - \"global-hieradata/environments/%{::environment}\"\n  - \"global-hieradata/networks/%{::network}\"\n  - \"global-hieradata/virtual/%{::is_virtual}\"\n  - \"global-hieradata/virtual/%{::virtual}\"\n  - \"global-hieradata/common\"\n:yaml:\n  :datadir: /etc/configuration\n{noformat}", "created": "2015-11-25T11:54:00.000000"}, {"author": "623c0a197910a200718b904e", "body": "I have another solution that's different from the others here, so I'll just chime in.\n\nI have an r10k postrun script that symlinks YAML files on the puppetserver into the environment's hieradata directory after each deploy.", "created": "2015-11-25T12:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Note that the new implementation supporting hiera data in \"data in modules\" that is part of puppet supports using the same backend multiple times. The 'data in modules' is a new feature in puppet 4.3.0 (considered somewhat experimental as we may need to make changes as people start using it / finding bugs).", "created": "2015-11-27T18:22:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is no longer an issue with the Hiera 5 implementation. Closing this as Won't Do since it is for the Hiera 3 version.", "created": "2017-08-21T09:50:00.000000"}], "components": [], "created": "2014-01-20T14:41:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4d30d77"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysoc7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_113076553879_*|*_6_*:*_1_*:*_0"}], "description": "It would be great if Hiera could support multiple backends of the same type.\n\nCurrently I make my own modifications to hiera and hiera-json to support multiple JSON data stores. My code is terrible, but available here:\n\nhttps://github.com/lukebigum/hiera\nhttps://github.com/lukebigum/hiera-json\n\nAnd it works with a configuration file like this:\n\n{noformat}    ---\n:backends: - json\n:hierarchy: - %{fqdn}\n            - %{pop}\n            - common\n:json:\n  :datadir: - /etc/puppet/private/\n            - /etc/puppet/environments/%{environment}/hiera_data_store/\n            - /etc/puppet/environments/%{environment}/rebirth_data_store/\n            - /etc/puppet/environments/%{environment}/satellite_system_groups/\n{noformat}\nAt the moment this allows me to separate out hiera keys into functional directories. For example some of the JSON data stores above are populated by scripts, others are edited by hand and some are outside an RCS system. The data stores are searched top to bottom, like the hierarchy.\n\nMy future plan with this is to use use the hierarchy of data stores to be able to allow Developers some control over what hiera data is defined. Something like the following would give Devs the ability to write any JSON they want into their own data store while my modifications to hiera allow our Administrators to override any hiera keys (the search stops on the first key found). The config file would look like this:\n\n    :json:\n      :datadir: - /etc/puppet/systems_data_store/\n                - /etc/puppet/dev_data_store/", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53697", "fixedVersions": [], "id": "53697", "issueType": "New Feature", "key": "HI-148", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Won't Do", "resolutionDate": "2017-08-21T09:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Support multiple backends of the same type", "timeSpent": "PT0S", "updated": "2017-08-21T09:50:00.000000", "votes": "14", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:50:00.000000"}], "components": [], "created": "2014-01-16T14:57:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7c9f4e44"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdz3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_596787649_*|*_5_*:*_1_*:*_11239620307_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53669", "fixedVersions": [], "id": "53669", "issueType": "Sub-task", "key": "HI-147", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-23T12:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2014-06-02T15:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:50:00.000000"}], "components": [], "created": "2014-01-16T14:57:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67c0ff42"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdyv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_596770247_*|*_5_*:*_1_*:*_11239635664_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53612", "fixedVersions": [], "id": "53612", "issueType": "Sub-task", "key": "HI-146", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-23T12:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update the downloads page", "timeSpent": "PT0S", "updated": "2014-06-02T15:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:50:00.000000"}], "components": [], "created": "2014-01-16T14:57:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@522a8cc5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdyn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_596329638_*|*_3_*:*_1_*:*_162741_*|*_5_*:*_1_*:*_11239909811_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53533", "fixedVersions": [], "id": "53533", "issueType": "Sub-task", "key": "HI-145", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-23T12:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge into pe branch", "timeSpent": "PT0S", "updated": "2014-06-02T15:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:50:00.000000"}], "components": [], "created": "2014-01-16T14:57:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@be285dd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysnpr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_434372241_*|*_5_*:*_1_*:*_11402027298_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54027", "fixedVersions": [], "id": "54027", "issueType": "Sub-task", "key": "HI-144", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-21T15:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update the branches", "timeSpent": "PT0S", "updated": "2014-06-02T15:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:50:00.000000"}], "components": [], "created": "2014-01-16T14:57:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@44909dd1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdyf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_594720953_*|*_3_*:*_1_*:*_1898849_*|*_5_*:*_1_*:*_11239762992_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53990", "fixedVersions": [], "id": "53990", "issueType": "Sub-task", "key": "HI-143", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-23T12:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2014-06-02T15:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:50:00.000000"}], "components": [], "created": "2014-01-16T14:57:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6df2b8d8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdy7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_596399121_*|*_5_*:*_1_*:*_11239975049_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53984", "fixedVersions": [], "id": "53984", "issueType": "Sub-task", "key": "HI-142", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-23T12:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2014-06-02T15:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:49:00.000000"}], "components": [], "created": "2014-01-16T14:57:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@da87cc0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdxz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_590637529_*|*_3_*:*_1_*:*_2108315_*|*_5_*:*_1_*:*_11243626584_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53940", "fixedVersions": [], "id": "53940", "issueType": "Sub-task", "key": "HI-141", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-23T11:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/no-go meeting", "timeSpent": "PT0S", "updated": "2014-06-02T15:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Added Link to HI-80 which contains some smoke testing steps", "created": "2014-01-21T15:43:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Debian-6 Squeeze PASSED", "created": "2014-01-21T16:02:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "CentOs 6 PASSED", "created": "2014-01-22T08:44:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "{code}man hiera{code} produces: \"no manual for hiera\" on both Deb6 and Centos 6. - is that expected? The instructions in HI-80 includes \"man hiera\" as a test...", "created": "2014-01-22T08:47:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] per the issue with a lack of man pages for hiera: HI-114. It looks like this hasn't been resolved yet. So I suppose just validate basic functionality, and make a note on the ticket (HI-114) about which platforms do and do not have man pages.", "created": "2014-01-22T12:26:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Ubuntu 13.10 passed.", "created": "2014-01-23T10:15:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "dmg PASSED", "created": "2014-01-23T10:35:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "gem install PASSED", "created": "2014-01-23T10:42:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:49:00.000000"}], "components": [], "created": "2014-01-16T14:57:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2d4ccea2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdxr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_589557998_*|*_5_*:*_1_*:*_11246812123_*|*_6_*:*_1_*:*_0"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.\n\n* Centos 5/6\n* Debian Squeeze/Wheezy\n* Ubuntu Lucid/Precise\n* Gem\n* dmg\n\nCheck that\n* hiera is available.\n* man hiera (except for gems)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53828", "fixedVersions": [], "id": "53828", "issueType": "Sub-task", "key": "HI-140", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-23T10:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Packages available at http://builds.puppetlabs.lan/hiera/1.3.1/", "created": "2014-01-21T15:34:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:49:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@76410e3d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysnpj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_434121530_*|*_3_*:*_1_*:*_108751_*|*_5_*:*_1_*:*_11402118704_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53766", "fixedVersions": [], "id": "53766", "issueType": "Sub-task", "key": "HI-139", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-21T15:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create package", "timeSpent": "PT0S", "updated": "2014-06-02T15:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:49:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6f61467"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysnpb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_434119624_*|*_5_*:*_1_*:*_11402225807_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53695", "fixedVersions": [], "id": "53695", "issueType": "Sub-task", "key": "HI-138", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-21T15:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Tag the release", "timeSpent": "PT0S", "updated": "2014-06-02T15:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:49:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@180cd7c1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysnp3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_73968933_*|*_3_*:*_1_*:*_8548232_*|*_5_*:*_1_*:*_11317679655_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_436144713"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53668", "fixedVersions": [], "id": "53668", "issueType": "Sub-task", "key": "HI-137", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-22T15:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Prepare puppet-announcement", "timeSpent": "PT0S", "updated": "2014-06-02T15:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "We have a 1.4.0 tag", "created": "2014-01-21T15:21:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:48:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6a0ce8fb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysnov:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_73965444_*|*_5_*:*_1_*:*_11402818294_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_359545123"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53610", "fixedVersions": [], "id": "53610", "issueType": "Sub-task", "key": "HI-136", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-21T15:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is a new version created for the next version in the series?", "timeSpent": "PT0S", "updated": "2014-06-02T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "yes, there are commits - there is however multiple book-keeping", "created": "2014-01-21T15:19:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:48:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6a21b6c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysnon:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_73963344_*|*_5_*:*_1_*:*_11402925457_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_359436430"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53532", "fixedVersions": [], "id": "53532", "issueType": "Sub-task", "key": "HI-135", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-21T15:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a commit for every bug targeted at the release?", "timeSpent": "PT0S", "updated": "2014-06-02T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Redmine issues #22142, and #22273 mentioned in commits between 1.3.0, and 1.3.1-rc1. Other commits are (maint), (packaging), or no tag at all (but seems to be about infrastructure for building / testing).", "created": "2014-01-21T15:02:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "#22142 retargeted from 1.4.0 to 1.3.1 http://projects.puppetlabs.com/issues/22142", "created": "2014-01-21T15:05:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "#22273 already targeted at 1.3.1 since 1 month", "created": "2014-01-21T15:07:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:48:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4fa1ea91"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysnof:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_73962802_*|*_5_*:*_1_*:*_11403670224_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_358684543"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54026", "fixedVersions": [], "id": "54026", "issueType": "Sub-task", "key": "HI-134", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-21T15:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is there a bug targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2014-06-02T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "All Hiera Jenkins Jobs green at the time this comment was entered. Marking as done.", "created": "2014-01-21T14:36:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:48:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1ced8549"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysno7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_73962948_*|*_5_*:*_1_*:*_11405464470_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_356863487"}], "description": "All tests (spec, acceptance) should be passing on all platforms.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53989", "fixedVersions": [], "id": "53989", "issueType": "Sub-task", "key": "HI-133", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-21T14:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure tests are passing", "timeSpent": "PT0S", "updated": "2014-06-02T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:47:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c99892"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysnnz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_73960798_*|*_5_*:*_1_*:*_11405905459_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_356419250"}], "description": "Check against sub-tickets https://confluence.puppetlabs.com/display/DEL/FOSS+Release+Process", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53983", "fixedVersions": [], "id": "53983", "issueType": "Sub-task", "key": "HI-132", "labels": [], "originalEstimate": "PT0S", "parent": "53882", "parentSummary": "Hiera 1.3.1 Release - January 23st, 2014", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-21T14:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Is checklist current", "timeSpent": "PT0S", "updated": "2014-06-02T15:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:47:00.000000"}], "components": [], "created": "2014-01-16T14:56:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4a3718bb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdxj:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_27718_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_596827002"}], "description": "See https://confluence.puppetlabs.com/display/DEL/FOSS+Release+Process for a more detailed description of what needs to be done for each sub-task", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53882", "fixedVersions": ["HI 1.3.1"], "id": "53882", "issueType": "Task", "key": "HI-131", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-23T12:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.1 Release - January 23st, 2014", "timeSpent": "PT0S", "updated": "2015-01-30T06:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "attachments": [], "comments": [{"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Closing as a duplicate of HI-115.", "created": "2014-02-17T20:53:00.000000"}], "components": [], "created": "2014-01-14T13:33:00.000000", "creator": "623c1717d32a94006a649be6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5c581127"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysmcv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2963977989_*|*_6_*:*_1_*:*_0"}], "description": "If you want to use a variable (hiera or top scope/fact) multiple times the RecursiveGuard is preventing you to do this (which is definitely wrong because it should prevent you from endless loops).\n\nyaml file:\n{code}\nsomething: 'xxx'\nshould_work: \"%{hiera('something')}%{hiera('something')}\"\n{code}\n\ncommand:\n{code}\n$ hiera should_work\n/usr/lib/ruby/vendor_ruby/hiera/recursive_guard.rb:13:in `check': Detected in [hiera('something')] (Hiera::InterpolationLoop)\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/interpolate.rb:11:in `interpolate'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/interpolate.rb:14:in `block in interpolate'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/recursive_guard.rb:16:in `check'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/interpolate.rb:11:in `interpolate'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend.rb:93:in `parse_string'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend.rb:104:in `parse_answer'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend/yaml_backend.rb:40:in `block in lookup'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend.rb:73:in `block in datasources'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend.rb:71:in `map'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend.rb:71:in `datasources'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend/yaml_backend.rb:16:in `lookup'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend.rb:174:in `block in lookup'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend.rb:171:in `each'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera/backend.rb:171:in `lookup'\n\tfrom /usr/lib/ruby/vendor_ruby/hiera.rb:60:in `lookup'\n\tfrom /usr/bin/hiera:221:in `<main>'\n{code}", "environment": "Debian jessie\nhiera 1.3.0-1puppetlabs1 from apt.puppetlabs.com", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53826", "fixedVersions": [], "id": "53826", "issueType": "Bug", "key": "HI-130", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c1717d32a94006a649be6", "resolution": "Duplicate", "resolutionDate": "2014-02-17T20:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "GuardControl prevents from using variables multiple times", "timeSpent": "PT0S", "updated": "2014-02-17T20:53:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "zaphod42 commented:\n\nRebase, cleaned up slightly and merged into master as https://github.com/puppetlabs/hiera/commit/d8195765ac99c933a9d0a81f1eac3439cacd41a9. Thanks for the contribution!\n", "created": "2014-01-15T12:31:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request Add output format to CLI has been closed.", "created": "2014-01-15T12:31:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Verified with the following:\n\n{code}\n# ~/.puppet/hiera.yaml\n---\n:backends: [yaml]\n\n:yaml:\n  :datadir: '/home/adrien/.puppet/hiera'\n\n:hierarchy: [common]\n\n{code}\n\n{code}\n# ~/.puppet/hiera/common.yaml\n---\n:backends: [yaml]\n\n:yaml:\n  :datadir: '/home/adrien/.puppet/hiera'\n\n:hierarchy: [common]\n{code}\n\n{code}\n$ bexec hiera -h -c ~/.puppet/hiera.yaml -f json foo\n{\"bar\":\"baz\"}\n$ bexec hiera -h -c ~/.puppet/hiera.yaml -f ruby foo\n{\"bar\"=>\"baz\"}\n{code}", "created": "2014-01-27T15:27:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:47:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Unclosing 1.4.0 tickets.", "created": "2014-06-02T16:01:00.000000"}], "components": ["Community"], "created": "2014-01-08T11:17:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2bf5d6ef"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqdwn:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_734235379_*|*_1_*:*_1_*:*_609252537_*|*_10009_*:*_1_*:*_313136092_*|*_5_*:*_2_*:*_36468456477_*|*_6_*:*_2_*:*_886601"}], "description": "h2. Add output format to CLI\n\n * Author: Michael Porter <the.germanboy@gmail.com>\n * Company: Skookum Digital Works\n * Github ID: [mrbanzai|https://github.com/mrbanzai]\n * [Pull Request 172 Discussion|https://github.com/puppetlabs/hiera/pull/172]\n * [Pull Request 172 File Diff|https://github.com/puppetlabs/hiera/pull/172/files]\n\nh2. Pull Request Description\n----\n\nThis allows the user to specify a return type via `-f` or `--format` (currently supports `json`, or the default `ruby`) for the Hiera results on the command-line, to allow integration with tools that don't support reading the default output format (especially when it comes to structured output).\n\nNote that \"ruby\" is likely a terrible name for the default output format, but I didn't want to use \"default\" and couldn't think of a more appropriate format name.\n\nAlso, I didn't add any tests as I didn't see any existing tests for the CLI.\n\nComments / suggestions appreciated.\n\n----\n(webhooks-id: 9222ed1846fc3339827bcb7252d90a23)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54025", "fixedVersions": ["HI 2.0.0"], "id": "54025", "issueType": "Task", "key": "HI-129", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-01-27T15:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (172): Add output format to CLI - mrbanzai", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "623c0b46d32a94006a649536", "body": "Many times, you can set a hash VALUE to something expected, and get logic to \"has key and value is not XXX\" to mean \"has key\".\n\nIn our deep merging code, for example, we check that there is a key and also that the value is not false (or some other value, if false is a valid value that we need to use). But, simplifying that to relying again on has_key would be even better.\n\nSo, there's kind of a work-around, but it would be a very nice feature to add to deep merging capabilities.", "created": "2014-05-20T17:59:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "The advantage of hiera is its simplicity, which it provides at the expense of some expressiveness. If you start to have this kind of programming logic inside the data store, you're building a system that is both not simple AND not built to be expressive, which leads to awful unmaintainability. \n\nI am super interested in the problems and use cases you want to solve with this, though. Because if we design a system that incorporates all the flexibility and power that we want to put into hiera but does so from the start, it could be pretty awesome.", "created": "2014-05-21T17:55:00.000000"}, {"author": "623c1571a1d81f0069d8e38e", "body": "The example I have is when defining iptables rules.  I have them in a hash of hashes, and pass that data structure to create_resources().  Most systems should have a default set, and it's easy to add more rules as needed.  It's very easy to see a case where I might want to prevent some rule from taking effect.  Without a way to block certain keys from moving forward, I need to resort to manually checking the state inside my code.  This can break the desired separation between data and code that one is trying to achieve with hiera.\n\nPrefixing a key with '-' might be a good approach. I'm not sure the comparison will be welcome, but this is how Windows handles it in .REG files:\n    http://www.pcreview.co.uk/forums/delete-key-using-reg-file-t1581446.html\n\nKarl's method of setting the key to \"false\" would also work.", "created": "2014-05-21T20:38:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Look at the {{lookup}} function and its ability to use a {{knockout_prefix}} and other merge options. Does that meet the needs?", "created": "2015-09-07T19:59:00.000000"}, {"author": "623c0a83bef8a60068c79663", "body": "hopefully this is the right issue, the title is a little bit misleading, i would call it \"Allow knockout rules for hashes\"\n\nas far as i can see knockout prefix only works for arrays, if not please add more complex examples.\n\nwhat hiera would need would be the following:\n\ncommon.yaml:\n{code:yaml}\nlookup_options:\n  firewall::rules: { merge: {strategy: deep, merge_hash_arrays: true, knockout_prefix: \"--\", sort_merge_arrays: true}}\n\nfirewall::rules\n    http_allow:  { action: 'ACCEPT', proto: 'tcp', source: 'net', dest: '$FW', port: '80', order: '50', comment: 'http access'  }\n    ssh_all: { action: 'ACCEPT', proto: 'tcp', source: 'net', dest: '$FW', port: '22', sport: '-', original_dest: '-', order: '50', comment: 'all ssh access'  }\n{code}\n\nexample.com.yaml:\n{code:yaml}\nfirewall::rules\n    --ssh_all:\n    ssh_admins: { action: 'ACCEPT', proto: 'tcp', source: 'net:123.456.768', dest: '$FW', port: '22', sport: '-', original_dest: '-', order: '50', comment: 'admin ssh access'  }\n{code}\n\nshould result in a merged yaml:\n{code:yaml}\nfirewall::rules\n    http_allow:  { action: 'ACCEPT', proto: 'tcp', source: 'net', dest: '$FW', port: '80', order: '50', comment: 'http access'  }\n    ssh_admins: { action: 'ACCEPT', proto: 'tcp', source: 'net:123.456.768', dest: '$FW', port: '22', sport: '-', original_dest: '-', order: '50', comment: 'admin ssh access'  }\n{code}\n\n[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] as you can see the usecase is quite simple and doesn't is against the simplicity of hiera\n\n[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] as far as i tested it, it doesn't work with hashes", "created": "2016-12-21T17:41:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "[~accountid:623c0a83bef8a60068c79663] this is implemented in the new Hiera system that is accessible via the {{lookup()}} function: https://docs.puppet.com/puppet/latest/function.html#merge-behaviors", "created": "2016-12-22T11:56:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Closing as resolved", "created": "2016-12-22T11:57:00.000000"}, {"author": "623c0a83bef8a60068c79663", "body": "[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] I am using the new hiera system via lookup function (hopefully, if the param lookup of puppet uses it). \ndo you mind giving me an example for my usecase? it works for arrays but i wasn't able to kick out a whole key of a hash.\n\nas you see in my example code i define the lookup options in the common.yaml file\n\n{code:java}\nlookup_options:\n\n  firewall::rules: { merge: {strategy: deep, merge_hash_arrays: true, knockout_prefix: \"--\", sort_merge_arrays: true}}\n{code}\n\nand there is a class\n\n\n{code:java}\nclass firewall (\n    $rules = {},\n) {\n    $rules.each |String $rule, Hash $parameters | {\n        firewall::rule { $rule:\n            * => $parameters\n        }\n    }\n}\n{code}\n\n\ni tried mixed variations of the knockout rule\n{code:java}\nfirewall::rules\n    --ssh_all:\n\n    --ssh_all: {}\n\n    --ssh_all: ssh_admins: { action: 'ACCEPT', proto: 'tcp', source: 'net:123.456.768', dest: '$FW', port: '22', sport: '-', original_dest: '-', order: '50', comment: 'admin ssh access'  }\n\n    --ssh_all: ~\n{code}\n\nnone of the above worked for me.\n\ni am working with puppet4 and trying to use the \"new\" stuff, i heard first about the knockout option https://www.devco.net/archives/2016/03/22/a-puppet-4-hiera-based-classifier.php (\"Simple list-of-classes based Classification\" section) and also read https://docs.puppet.com/puppet/latest/function.html#merge-behaviors\n\neverywhere are only examples with +arrays+ not with +hashes+\n\nit would be good to provide such a example in the docs", "created": "2016-12-22T13:47:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I suspect it is the value that is knocked out, not the key. Also beware of unquoted '\\-' in yaml as '\\-' has special meaning in some cases.", "created": "2016-12-23T04:48:00.000000"}, {"author": "623c0a83bef8a60068c79663", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] then we have to reopen the ticket, the ticket is about \"remove this key\" from hash (or should i open a new one?).\n\ni tried all combinations:\n{code:java}\nfirewall::rules\n    --ssh_all:\n    --ssh_all: {}\n    --ssh_all: ssh_admins: { action: 'ACCEPT', proto: 'tcp', source: 'net:123.456.768', dest: '$FW', port: '22', sport: '-', original_dest: '-', order: '50', comment: 'admin ssh access'  }\n    --ssh_all: ~\n    '--ssh_all':\n    '--ssh_all': {}\n    '--ssh_all': ssh_admins: { action: 'ACCEPT', proto: 'tcp', source: 'net:123.456.768', dest: '$FW', port: '22', sport: '-', original_dest: '-', order: '50', comment: 'admin ssh access'  }\n    '--ssh_all': ~\n{code}\n\nnone of them worked.\n\nwhat should work, or what my feature request would be:\n\n{code:java}\n    '--ssh_all':\n#or\n    '--ssh_all': {}\n{code}\n\nshould remove the key of a hash with all its subelements\n\nbecause then we can define for example common firewall rules (which are defined as a hash) and remove them again for a specific host", "created": "2016-12-23T14:15:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "You still have the knockout prefix in the key. The idea (I think) is that you knock out the value for the key, and that means that key is not present in the resulting hash.", "created": "2016-12-25T04:59:00.000000"}, {"author": "70121:e83e1a27-3346-490e-9e8f-a84f75436063", "body": "Im having the same issue, the knockout_prefix seems to have no affect on hashes.  i still see the key set to a value from a lower priority level in the hiera\n\nto update this i found that if i did \n\n{code:yaml}\nfirewall::rules\n  ssh_all: --\n{code}\n\nthen `ssh_all === ''` however my expectation was that `ssh_all === undef`", "created": "2017-04-10T07:53:00.000000"}], "components": [], "created": "2014-01-08T03:27:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3611d584"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysjyv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_93256220241_*|*_5_*:*_1_*:*_0"}], "description": "Issue #16107 is a great improvement to Hiera, and almost meets my needs.  All I need now is for you to add the ability to remove a key as you merge down hash values, and it would be awesome.\n\nBasically, allow me to specify that the merge should \"remove\" a key, or a branch, rather than just plain overwriting it.\n\n(It would be great to implement the full suite of set operations, of course; and, or, xor, and not, but just allowing not would be a great start.)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53606", "fixedVersions": [], "id": "53606", "issueType": "New Feature", "key": "HI-128", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Fixed", "resolutionDate": "2016-12-22T11:57:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera deep merge on hash doesn't have a \"whiteout\" or \"remove this key\" value", "timeSpent": "PT0S", "updated": "2017-04-10T08:04:00.000000", "votes": "11", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:2252b284-7806-4292-b1de-2dcd49dc7d17", "body": "There's a simple workaround for this, if you really need to do it and you'd rather not change your manifest / template:\n\n{noformat}\nfoo: \"%%{THIS_DOESNT_EXIST}{BAR}\"\n{noformat}\nWill output\n\n{noformat}\nfoo: %{BAR}\n{noformat}\nAs expected.", "created": "2014-01-07T09:14:00.000000"}, {"author": "623c1717d32a94006a649be6", "body": "this workaround doesn't work with hiera 1.3 I think.. looks like hiera 1.3 is doing multiple times a check on the string and will replace all variables and also all new \"generated\" variables afterwards as well.. at least in my case hiera 1.1 failed (exception), 1.2 worked and 1.3 gives me empty strings..", "created": "2014-01-14T14:17:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "After reviewing this issue and the linked Redmine ticket, I can think of three possible implementations:\n\nh1. Option 1: Backslash escaping\n\n*Form:*\n\n{code}\n\\%{some::interpolation}\n{code}\n\n*Pros:*\n\n- Very familiar. Closely mirrors how Puppet variable interpolation is escaped.\n\n*Cons:*\n\n- Using a backslash as an escape character also requires implementing support for escaping backslashes. This may require turning the Hiera interpolator into a full-blown parser.\n\n- Would have a heavy impact on any existing data that contains Windows paths.\n\nh1. Option 2: Doubled Sigil Escaping\n\n*Form:*\n\n{code}\n%%{some::interpolation}\n{code}\n\n*Pros:*\n\n- Less invasive than backslash escaping.\n\n*Cons:*\n\n- Introduces another syntactical difference between Hiera interpolation and Puppet interpolation.\n\n- Still not entirely backwards compatible.\n\n\nh1. Option 3: Interpolation Function\n\n*Form:*\n\n{code}\n%{escape('some::interpolation')}\n{code}\n\n*Pros:*\n\n- Uses the new \"interpolation function\" support introduced in Hiera 1.3.0. Backwards compatible.\n\n*Cons:*\n\n- Verbose syntax.\n\n- Can't handle all cases. In particular, the regular expression used to parse interpolation functions means we cannot escape any string containing single or double quotation marks such as other interpolation functions:\n\n{code}\n# This won't work:\n%{escape('scope(\"some::interpolation\")')}\n{code}\n\n----\n\nOption 3 seems like the only choice that can be implemented without waiting for a 2.0 major version break. I have a [working implementation|https://github.com/Sharpie/hiera/tree/HI-127-escaped-lookups], but would love to hear suggestions before throwing it up as a pull request.", "created": "2014-02-18T19:31:00.000000"}, {"author": "623c1717d32a94006a649be6", "body": "* I think a backslash is also already used by yaml in normal \"\" strings.. so I would avoid that\n* Interpolation function does not look nice and if this cannot handle everything :(..\n* I would like to have %%.. but I understand, that this will break stuff from others..\n", "created": "2014-02-19T11:44:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "[~accountid:557058:aa277a93-6688-4f34-ad9d-e53477acf74b], I want to make sure that I'm understanding your *Option 3* correctly. With that support, in order to do what is asked for in the description you'd need to write:\n{code}\nmyserver: \"http://%{escape('%')}{SERVER_NAME}\"\n{code}\n\nI think a better name than {{escape}} would be {{literal}}, if I'm understanding the semantics of this correctly.\n\nYou are right, though, that it is pretty verbose. Maybe there is a simpler way. What we really need is for a way of getting a literal {{%}} that is followed by an opening curly brace. This means that we really just need a syntax to produce a {{%}} since that syntax alone (as long as it doesn't end with a {{%}}) would be enough to avoid the interpolation. So, with that in mind, what about something much simpler:\n{code}\nmyserver: \"http://%{%}{SERVER_NAME}\"\n{code}\n\nIn this case an interpolation of just {{%}} produces a literal {{%}} value. This is *mostly* backwards compatible since it would only shadow a lookup for a variable named {{%}}, which I really doubt exists.", "created": "2014-03-19T12:28:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "[~accountid:623a4c3b4a57610068e6782b] Actually, my implementation looks like this:\n\n{code}\nmyserver: \"http://%{escape('SERVER_NAME')}\"\n{code}\n\nThat interpolation would expand to:\n\n{code}\nmyserver: \"http://%{SERVER_NAME}\"\n{code}\n\nYour example goes in a different direction --- one that is is more flexible than what I had implemented.", "created": "2014-03-19T12:54:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Hi [~accountid:623a4c3b4a57610068e6782b],\n\nIn your last comment on PR #184 (https://github.com/puppetlabs/hiera/pull/184), are you saying that %{%}{Something literal} already works?\n\n\nThanks,\nChris", "created": "2014-03-20T15:39:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Well... sort of.\n\nFor example, given the following Hiera data:\n\n{code}\n---\nsome_key: 'This string contains an %{%}{interpolation}'\n{code}\n\nOne could define the key \"%\" to return \"%\" and thus turn \"%{%}\" into an escape:\n\n{noformat}\n# hiera some_key %=%\nThis string contains an %{interpolation}\n{noformat}\n\nHowever, this is mostly a hack and would be all sorts of messy to use from Puppet. The idea would be to update the Hiera interpolation code to treat \"%{%}\" as an escape which would be pretty much backwards compatible as you would have to be doing something crazy to define \"%\" as a key for Hiera interpolation.\n\nI'll look into re-organizing my escape function to achieve this.", "created": "2014-03-20T16:12:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Pull request submitted: https://github.com/puppetlabs/hiera/pull/185", "created": "2014-03-20T17:30:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Also worth noting is that the prior workaround of:\n\n{noformat}\nfoo: \"%%{THIS_DOESNT_EXIST}{BAR}\"\n{noformat}\n\nNow works again under Hiera 1.3.2 due to way HI-115 was resolved.", "created": "2014-03-20T17:53:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "And finally, I just noticed that a \"%\" sign followed by an empty interpolation works:\n\n{code}\n---\nsome_key: 'This string contains an %%{}{interpolation}'\n{code}\n\nThat makes me wonder if we should just add some unit tests that enforce that behavior for \"%%{}\" and call this ticket solved.", "created": "2014-03-20T18:10:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "After discussion during the 3/26/2014 PR triage, it was decide to:\n\n  - Proceed with the 'literal' function.\n\n  - Drop the \"%{%}\" shorthand.\n\n  - Leave \"%%{}\" as an undocumented and untested behavior.\n\nPR 185 updated and merged into master in commit [73da4ee|https://github.com/puppetlabs/hiera/commit/73da4ee].", "created": "2014-03-31T13:17:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Verified, I think, in puppet-3.5.0-0.1rc3.181.el6 (SHA=d659254a3d95c165ab0b2a104e03f9229079d9ce)\n{code}\n# global.yaml\n---\nkey_1: 'Shorthand version: %{%}{sekrit}'\nkey_2: 'Undocumented/untested version: %%{sekrit}'\nkey_3: '% followed by empty interpolation: %%{}{sekrit}'\nkey_4: %{literal('%')}{sekrit}\n\n# for n in 1 2 3 4", "created": "2014-04-03T11:26:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Looks good. [~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a]: Thanks for running through all the proposals discussed in this ticket and showing what the final behaviors are :)", "created": "2014-04-03T11:44:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:46:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Unclosing 1.4.0 tickets.", "created": "2014-06-02T16:02:00.000000"}, {"author": "557058:1fdc76f4-b360-4f3a-a4b5-990542a56609", "body": "This feature should be added to the documentation.", "created": "2014-07-26T11:23:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "[~accountid:557058:1fdc76f4-b360-4f3a-a4b5-990542a56609]: {{literal('%')}} will be added to the documentation once Hiera 1.4.0 ships. As noted above, %%{} works by coincidence and has no test coverage, so it won't be documented as an expected behavior.", "created": "2014-07-26T13:04:00.000000"}, {"author": "623c09d27910a200718b903c", "body": "On puppet 3.6.2 with Hiera 1.3.4, the recommended escape solution of literal('%') isn't working for me with a string member of an array in my hiera configuration.  \n\nHere's a sample of my hiera yaml:\n\n{code:title=global.yaml|borderStyle=solid}\nadditional_config:\n      - 'RewriteEngine on'\n      - 'RewriteCond %{HTTP_HOST} ^origin- [NC]'\n{code}\n\nThis yields the predictable:\n\n{code}\n  RewriteCond  ^origin- [NC]\n{code}\n\nTrying the fix literal('%') doesn't seem to work as expected.  See the following yaml and result (note that I've used double quotes for the string to avoid escape problems with the single quotes in the literal call):\n\n{code:title=global.yaml|borderStyle=solid}\n    additional_config:\n      - 'RewriteEngine on'\n      - \"RewriteCond %{literal('%')}{HTTP_HOST} ^origin- [NC]\"\n{code}\n\nThis yields:\n\n{code}\n  RewriteCond {HTTP_HOST} ^origin- [NC]\n{code}\n\nFor rigor, I also tried to manually escape the single quotes in the yaml:\n\n{code:title=global.yaml|borderStyle=solid}\n    additional_config:\n      - 'RewriteEngine on'\n      - 'RewriteCond %{literal(''%'')}{HTTP_HOST} ^origin- [NC]'\n{code}\n\nThis yields the same result as above.\n\nFinally, sadly, the workaround of splitting the interpolation with an empty interpolation DOES work:\n\n{code:title=global.yaml|borderStyle=solid}\n    additional_config:\n      - 'RewriteEngine on'\n      - 'RewriteCond %%{}{HTTP_HOST} ^origin- [NC]'\n{code}\n\nYields:\n\n{code}\n  RewriteCond %{HTTP_HOST} ^origin- [NC]\n{code}\n\nSo, just curious- the above comment from Charlie seems to indicate that this works in Hiera 1.4.  The target version is 2.0 on the ticket.  1) Was this an actual change or just an addition to the testing and documentation for a newer version?  If the latter, does anyone know why the prescribed solution isn't working for me?  And 2) Is this change (documentation OR code) going to be included in 1.4 or 2.0?\n\nThanks all, and sorry for the lack of brevity.", "created": "2015-02-10T16:09:00.000000"}, {"author": "623c09d27910a200718b903c", "body": "Addendum- looking at the commits, 1.3.4 should at least have support for {code}%{literal('%')}{code} due to the fact that the commit mentioned here (https://github.com/puppetlabs/hiera/commit/73da4ee) occurred before the 1.3.4 tag.  Not sure why my syntax isn't working.\n\nAgain, I may be missing something obvious here- I'm relatively new to hiera.", "created": "2015-02-10T16:19:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "[~accountid:623c09d27910a200718b903c]: Commit 73da4ee was made to the master branch, 1.3.4 was cut from stable and does not include this feature. The {{literal}} function will be released in the next Hiera feature release.\n\nFor 1.3.4, the %%{} workaround is currently the only viable solution that I know of.", "created": "2015-02-10T17:22:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Also, Hiera 1.4 has been dropped in favor of shipping a Hiera 2.0.", "created": "2015-02-10T17:23:00.000000"}, {"author": "557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4", "body": "I get an error when this literal function appears twice in the same hierarchy tier. \n\nI have this: \n{code:ruby}\n - \"cluster/%{literal('%')}{::cluster}/%{literal('%')}{role}\"\n{code}\n\nand the error I get is: \n\nError: Could not retrieve catalog from remote server: Error 400 on SERVER: Evaluation Error: Error while evaluating a Function Call, Error from DataBinding 'hiera' while looking up 'puppet::data_hierarchy': Detected in [literal('%')] at   ~~~(class that is doing the lookup~~~\n\nIf i take either the first literal function or the last literal function out it fails. \n\n\n\n", "created": "2015-09-02T15:45:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4] Please open a new ticket with the problem you found, and describe details about version used etc. This ticket is already closed.", "created": "2015-09-11T17:31:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:623c0dfe50bb2b0070b6b0b3] you assigned yourself to this closed ticket. Was that by accident?", "created": "2016-03-10T07:40:00.000000"}], "components": ["DOCS"], "created": "2014-01-07T09:11:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e0d51cc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq7tj:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_177256052_*|*_1_*:*_1_*:*_7182402222_*|*_10009_*:*_1_*:*_75259996_*|*_5_*:*_2_*:*_30784087242_*|*_6_*:*_2_*:*_933913"}], "description": "UPDATE\n---\nAdd a {{literal}} function to hiera to allow characters to be included without special interpretation.\n\nExample: {{literal('%')}}\n\nORIGINAL\n---\nI have some data that contains Apache variables (such as %{SERVER_NAME}, %{QUERY_STRING}, etc )\nin a Hiera file (Yaml backend). However, when I retrieve the value, the string is replaced with \nempty value. For instance, for:\n\nmyserver: http://%{SERVER_NAME}\n\nI got the value \"http//\"\n\nI found out that during the lookup in the YAML backend, the answer is parsed and Hiera\ntries to resolve the variable or replace it by an empty string if the variable is not found.\n\nWe should have a way to escape this from any String or disable the variable resolution\ncompletely in the order to get the correct value. \n\nWhat about escaping with \"\\\" character?\nSo, if we have this data in Hiera file:\n\nmyserver: http://\\%{SERVER_NAME}\n\nWe get the correct string:\n\nmyserver: http://%{SERVER_NAME}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53988", "fixedVersions": ["HI 2.0.0"], "id": "53988", "issueType": "New Feature", "key": "HI-127", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Fixed", "resolutionDate": "2014-04-03T11:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow escaping %{...} in hiera data to avoid replacement (add literal function)", "timeSpent": "PT0S", "updated": "2016-03-17T07:28:00.000000", "votes": "4", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "This is targeted against stable, but shouldn't it be targeted against master?", "created": "2014-01-21T11:42:00.000000"}, {"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Merged into master in eec3180.", "created": "2014-01-23T13:30:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:46:00.000000"}, {"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "[~accountid:557058:58c5336a-e9d7-4eff-b221-85517090556b] We don't move things to closed until they are released. ", "created": "2014-06-02T15:55:00.000000"}], "components": [], "created": "2014-01-03T14:49:00.000000", "creator": "557058:91233464-4152-4228-81dd-172d43a52a03", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1b5acbec"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysko7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_76993673_*|*_1_*:*_1_*:*_6678_*|*_10007_*:*_1_*:*_1714130760_*|*_10009_*:*_1_*:*_279991295_*|*_5_*:*_2_*:*_36464614235_*|*_6_*:*_2_*:*_444220_*|*_10006_*:*_1_*:*_9046110"}], "description": "See PUP-1282", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53531", "fixedVersions": ["HI 2.0.0"], "id": "53531", "issueType": "Task", "key": "HI-126", "labels": ["windows"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:91233464-4152-4228-81dd-172d43a52a03", "resolution": "Fixed", "resolutionDate": "2014-01-27T16:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Build windows specific gem", "timeSpent": "PT0S", "updated": "2015-11-12T12:35:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c0af6a9575800695ac931", "body": "Inability to access the trusted hash is a major concern, especially when using hiera-eyaml or hiera as an ENC with hiera_include().\n\nA workaround in the mean time is to define trusted variables as key/value pairs in site.pp, or in the case of clientcert, set it as a property in your ENC script.", "created": "2015-03-10T15:04:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This is fixed in HI-14 which will be released in Hiera 2.0.0", "created": "2015-03-10T16:17:00.000000"}], "components": [], "created": "2014-01-03T04:50:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1e9d247e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysimv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_37276024492_*|*_6_*:*_1_*:*_0"}], "description": "Although Hiera receives all of Puppet's variables, it can only interpolate strings/numbers/bools -- it can't get members of arrays or hashes. Trying, e.g.\n\n{code}\n\"%{my_array[3]}\"\n{code}\n\n...results in an endless loop. (This is probably related to #17094.)\n\nThis now prevents us from using values like {{\"$trusted['certname']\"}} in the hierarchy, and blocks any use of structured facts like {{os}} in Hiera.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53881", "fixedVersions": [], "id": "53881", "issueType": "New Feature", "key": "HI-125", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Duplicate", "resolutionDate": "2015-03-10T16:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Can't interpolate hash or array members with %{} tokens", "timeSpent": "PT0S", "updated": "2015-03-10T16:18:00.000000", "votes": "6", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "[~accountid:557058:104b5720-714d-4539-b455-df472251ec89] thank you for adding this ticket. Our current workflow would be to create a QA ticket for the tests and link the ticket to the [HI-8] and [HI-9] tickets. Since doing so now would be a duplication of this ticket, I will just mark this one as triaged. The other option would be to create the QA ticket and mark this one as a duplicate. Are you trying to provide greater visibility of these tests to the Hiera team?", "created": "2014-01-02T09:09:00.000000"}, {"author": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "body": "Cool, [~accountid:557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced] triage away! This is an action item that came out of discussion in HI-8 I believe, but didn't have it's own ticket. I wanted to enumerate the actual items of work needed to complete HI-7 before I handed it off to [~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a], hence the ticket. Please slot it into your normal workflow however you feel best.", "created": "2014-01-02T10:01:00.000000"}, {"author": "557058:b3e6b0df-198d-45f8-9ba5-d41f90e80ced", "body": "This is QA work. QA-682 has been created for this. This ticket is being closed as a duplicate.", "created": "2014-01-06T11:40:00.000000"}], "components": ["QA"], "created": "2013-12-30T11:50:00.000000", "creator": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@50a17e9d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyshh3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_604178583_*|*_6_*:*_1_*:*_0"}], "description": "Currently the hiera functional tests don't do anything on agent platforms. We need to write new tests or refactor existing tests to ensure that happens. See HI-8 & HI-9.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53944", "fixedVersions": [], "id": "53944", "issueType": "Bug", "key": "HI-124", "labels": ["qa-reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "resolution": "Duplicate", "resolutionDate": "2014-01-06T11:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Write tests to test hiera on agent platforms", "timeSpent": "PT0S", "updated": "2014-11-07T08:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:662f32cc-9bf9-4803-a740-7dc2bd53b84d", "body": "As Josh Cooper mentioned: \"we should probably package json_pure by default and update the Gemfile accordingly.\"\nThis was also chosen as the current fix for the problem.", "created": "2014-01-11T12:03:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Thank you for reporting this. We believe this issue was addressed in a later release of Puppet. If you experience this issue against the current version of Puppet, please add a comment to this ticket with your reproduction scenario.\n\nFor more info on getting the current version of Puppet Agent, see https://docs.puppet.com/puppet/latest/install_pre.html.", "created": "2017-03-24T00:49:00.000000"}], "components": [], "created": "2013-12-30T11:23:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2e6fbd8b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyshdz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Windows"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1039209134_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_100871160466"}], "description": "From this example:  http://www.craigdunn.org/2011/10/puppet-configuration-variables-and-hiera/\n\n{code}\nC:\\Users\\Administrator\\temp&gt; type hiera.yaml\n:backends: - json\n\n:logger: console\n\n:hierarchy: - %{env}\n            - common\n:json:\n   :datadir: hieradata\n\n\nC:\\Users\\Administrator\\temp\\hieradata>type common.json\n{\n  \"webname\": \"localhost\"\n}\n\nC:\\Users\\Administrator\\temp\\hieradata>type dev.json\n{\n  \"webname\": \"dev.app.local\"\n}\n\n\nC:\\Users\\Administrator\\temp>hiera -c hiera.yaml webname\nC:/Puppet/sys/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem\noriginal_require': no such file to load -- json (LoadError)\n        from C:/Puppet/sys/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.b:36:in `require'\n        from C:/Puppet/hiera/lib/hiera/backend/json_backend.rb:5:in `initialize\n        from C:/Puppet/hiera/lib/hiera/backend.rb:158:in `new'\n        from C:/Puppet/hiera/lib/hiera/backend.rb:158:in `lookup'\n        from C:/Puppet/hiera/lib/hiera/backend.rb:156:in `each'\n        from C:/Puppet/hiera/lib/hiera/backend.rb:156:in `lookup'\n        from C:/Puppet/hiera/lib/hiera.rb:62:in `lookup'\n        from C:/Puppet/hiera/bin/hiera:220\n{code}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53765", "fixedVersions": [], "id": "53765", "issueType": "Bug", "key": "HI-123", "labels": ["redmine", "windows"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Fixed", "resolutionDate": "2017-03-24T00:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera json backend is broken on puppet 3.1.1 for windows", "timeSpent": "PT0S", "updated": "2017-03-24T00:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2013-12-23T18:00:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request (doc) Update links to point to Jira has been closed.", "created": "2013-12-26T10:43:00.000000"}], "components": ["Community"], "created": "2013-12-23T16:21:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@23ab69e0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysgkn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7322807005_*|*_6_*:*_1_*:*_0"}], "description": "h2. (doc) Update links to point to Jira\n\n * Author: Andrew Parker <>\n * Company: Puppet Labs\n * Github ID: [zaphod42|https://github.com/zaphod42]\n * [Pull Request 170 Discussion|https://github.com/puppetlabs/hiera/pull/170]\n * [Pull Request 170 File Diff|https://github.com/puppetlabs/hiera/pull/170/files]\n\nh2. Pull Request Description\n----\n\nSince we changed from Redmine to Jira we need to direct readers to the right\nplace\n\n----\n(webhooks-id: 17c2f70a62f0d600cb5bb359b9d5002d)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53982", "fixedVersions": [], "id": "53982", "issueType": "Task", "key": "HI-122", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-03-18T11:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (170): (doc) Update links to point to Jira - zaphod42", "timeSpent": "PT0S", "updated": "2014-03-18T11:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Justin, did you ever create a module based on this, as discussed in the Redmine ticket? Also, I can't get to your website, is it offline or a connectivity issue?", "created": "2014-12-04T14:35:00.000000"}, {"author": "557058:f8fa2bbd-948b-435b-bdaf-5c61ec3d476c", "body": "I started on a module, but got sidetracked and haven't ever gone back to it.  It looks like the URL has been updated: http://blog.yo61.com/assigning-resources-to-nodes-with-hiera-in-puppet/.  If you get the ambition to do it I'd still be interested in it.", "created": "2014-12-04T14:40:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "That's pretty awesome, I'm tired of the hiera lookup + create_resource pattern myself so I'm game to give it a shot. Someday. Maybe Christmas \"break\"!", "created": "2014-12-04T15:26:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Justin, I published https://forge.puppetlabs.com/rnelson0/hiera_resources (https://github.com/rnelson0/hiera_resources) based on Robin Bowes's work. I haven't had any chance to test it yet, given the holidays. I plan to try in the next few days, if you get to it first, let me know how it goes here or as a github issue.", "created": "2014-12-24T10:00:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "I'm going to close this ticket since this one is getting a bit crufty and it is now in a module. Let me know on github issues if you find any problems with it.", "created": "2015-02-05T05:36:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Functionality is provided now through a module, https://forge.puppetlabs.com/rnelson0/hiera_resources.", "created": "2015-02-05T05:36:00.000000"}], "components": [], "created": "2013-12-23T10:58:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5de70f42"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysgfb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_31618992546_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_3699300539"}], "description": "Currently the only remaining things I have in my site.pp are defines which I would like to move into hiera.  This will allow for more flexibility when adjusting, adding, and removing resources by leveraging hiera's flexibility.\n\nThis PR is a merge of the code from this blog post (http://yo61.com/assigning-resources-to-nodes-with-hiera-in-puppet.html) and from the existing hiera_include function.\n\nIt will probably be most useful with the Hiera 1.2.0 release which includes feature 16107.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53667", "fixedVersions": [], "id": "53667", "issueType": "New Feature", "key": "HI-121", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Fixed", "resolutionDate": "2015-02-05T05:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add hiera_resources similar to hiera_include", "timeSpent": "PT0S", "updated": "2015-02-05T05:36:00.000000", "votes": "3", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:27078494-d5fa-41e2-a5af-8e8216732e29", "body": "I have created a pull request: https://github.com/puppetlabs/hiera/pull/169", "created": "2013-12-23T09:18:00.000000"}, {"author": "70121:513396e5-6d1e-4ed4-acee-3752a305e2af", "body": "I'm only another puppet/hiera user who stumbled upon your feature request and have no standing with puppetlabs whatsoever. But there are some problems I see with your request:\n\n1.) Puppet multi master setups can generate different catalogs for the same node, because Dir.glob returns the files in an order dependent on the system it is run on. As far as i can tell, the result of Dir.glob isn't sorted in any way in your pull request, so on different masters the order can be different and therefore the hierachy.\n2.) This change breaks all other hiera backends (yaml, etc) as far as I can tell.\n3.) I can see only one valid use case for this behavior: To realize two or more independent projects on one node. I concede that this isn't possible at the moment, as far as I know, because it isn't possible to redeclare variables in puppet (with the exception, if all projects are configured in independent puppet modules the special variable %calling_module can be used in the hierarchy). I wrote my own puppet hiera connector to solve (among others) this problem. I considered your approach also, but discarded it because as the count of projects increase the performance will get terrible (for every hiera lookup up every time all projects have to be questioned). Also there is no hierarchy between independent projects, why create one?", "created": "2013-12-29T05:19:00.000000"}, {"author": "557058:27078494-d5fa-41e2-a5af-8e8216732e29", "body": "Yeah, you are right.\n\n1. could be easy to fix\n2. fixing yaml could be easy, but could be dozens of custom backends that will get broken\n3. My problem is I want projects to define their own hostgroups, host templates, etc, and one node, Icinga/Nagios host, to implement all of them.\nBut sure, reading and parsing dozens of json files in each lookup is definitely a bad idea.\n\nI am thinking moving to some other backend as mysql or redis.\n\nThanks!", "created": "2013-12-30T03:25:00.000000"}, {"author": "557058:27078494-d5fa-41e2-a5af-8e8216732e29", "body": "As pointed by Reinhard Vicinus, this implementation breaks several things", "created": "2013-12-30T03:29:00.000000"}], "components": [], "created": "2013-12-23T09:11:00.000000", "creator": "557058:27078494-d5fa-41e2-a5af-8e8216732e29", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@70fb1bfb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysgdz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_3_*:*_584100162_*|*_6_*:*_2_*:*_198286"}], "description": "It would be great to allow wildcards when defining the hierarchy in hiera.yaml.\n\nExample:\nIn want to have a directory tree like this:\nhiera/project-name/common.json\nhiera/project-name/webservers.json\n\nBut the number of projects is variable.\n\nSo I want to define a hiera.yaml like:\n\n:backends:\n  - json\n:json:\n  :datadir: /tmp/pruebas-hiera/hiera\n:hierarchy:\n  - \"*/webservers\"\n  - \"*/common\"\n\nIn that files, for instance, will be the users that some node have to create. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53824", "fixedVersions": [], "id": "53824", "issueType": "Improvement", "key": "HI-120", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:27078494-d5fa-41e2-a5af-8e8216732e29", "resolution": "Won't Fix", "resolutionDate": "2013-12-30T03:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow wildcards in hierarchy", "timeSpent": "PT0S", "updated": "2013-12-30T03:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "ferventcoder commented:\n\n@jpartlow can you review and pull this in? \n", "created": "2013-12-19T17:03:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2013-12-19T20:01:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request (maint) Adding beaker gem required items has been closed.", "created": "2013-12-20T10:53:00.000000"}], "components": ["Community"], "created": "2013-12-19T16:35:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@77835f4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysfqf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7667571623_*|*_6_*:*_1_*:*_0"}], "description": "h2. (maint) Adding beaker gem required items\n\n * Author: Rob Reynolds <>\n * Company: \n * Github ID: [ferventcoder|https://github.com/ferventcoder]\n * [Pull Request 168 Discussion|https://github.com/puppetlabs/hiera/pull/168]\n * [Pull Request 168 File Diff|https://github.com/puppetlabs/hiera/pull/168/files]\n\nh2. Pull Request Description\n----\n\nThis will allow us to use the beaker gem instead of cloning it \nfrom git. This adds ignored items for when running hiera acceptance \ntests locally and a gemfile pointing to a particular version of beaker.\n\n----\n(webhooks-id: 06f6d96c446bdef09610f19ce0e51dfe)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53666", "fixedVersions": [], "id": "53666", "issueType": "Task", "key": "HI-119", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-03-18T11:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (168): (maint) Adding beaker gem required items - ferventcoder", "timeSpent": "PT0S", "updated": "2014-03-18T11:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Dup of [HI-27], which was migrated before JIRA was public.", "created": "2013-12-17T18:46:00.000000"}], "components": [], "created": "2013-12-17T07:40:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@188bc72"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysbnb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_39961274_*|*_6_*:*_1_*:*_0"}], "description": "Currently, inside the Yaml files, Hiera only supports a syntax such as;\n\n<pre>\nnginx::sendfile: on\nnginx::worker_connections: 10\n</pre>\n\nIn Yaml, we can do better than this, it should be possible to write the file something like;\n\n<pre>\nnginx:\n    worker_connections: 10\n    sendfile: on`\n</pre>\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53981", "fixedVersions": [], "id": "53981", "issueType": "New Feature", "key": "HI-117", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Duplicate", "resolutionDate": "2013-12-17T18:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Extend Hiera to support Proper Yaml Syntax", "timeSpent": "PT0S", "updated": "2013-12-17T18:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2013-12-16T23:00:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request Adds support for building hiera on RHEL7 via spec. has been closed.", "created": "2013-12-17T17:40:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Spec tickets don't require QA review", "created": "2015-02-12T17:26:00.000000"}], "components": ["Community"], "created": "2013-12-16T19:06:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@53507fe4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysbiv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7917730164_*|*_6_*:*_1_*:*_0"}], "description": "h2. Adds support for building hiera on RHEL7 via spec.\n\n * Author:  <>\n * Company: \n * Github ID: [dyarnell|https://github.com/dyarnell]\n * [Pull Request 167 Discussion|https://github.com/puppetlabs/hiera/pull/167]\n * [Pull Request 167 File Diff|https://github.com/puppetlabs/hiera/pull/167/files]\n\nh2. Pull Request Description\n----\n\nRHEL 7 RPM build support.\n\n----\n(webhooks-id: eaed385eb95a4ca50814974f023f407b)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53764", "fixedVersions": [], "id": "53764", "issueType": "Task", "key": "HI-116", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Done", "resolutionDate": "2014-03-18T11:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (167): Adds support for building hiera on RHEL7 via spec. - dyarnell", "timeSpent": "PT0S", "updated": "2015-02-12T17:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "According to git-bisect, this recursed in [1461832|https://github.com/puppetlabs/hiera/commit/1461832]. This was part of [pull request 152|https://github.com/puppetlabs/hiera/pull/152] which added support for recursive Hiera lookups.\n\nUnfortunately, this appears to have introduced a regression where it is no longer possible to interpolate the same variable twice in a Hiera string.", "created": "2014-01-11T14:13:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "Pull request submitted.", "created": "2014-02-18T11:40:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "Merged into stable in [7175bb|https://github.com/puppetlabs/hiera/commit/7175bb748b7d95bc0141965834af6d78a652bfae]", "created": "2014-02-18T17:05:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "Verified with a simple yaml data file that interpolated a hiera function call twice.", "created": "2014-02-18T17:21:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Released in Hiera 1.3.2-rc2", "created": "2014-02-20T16:08:00.000000"}], "components": [], "created": "2013-12-16T08:48:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a2af231"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt053:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_871835_*|*_1_*:*_1_*:*_2265909468_*|*_10007_*:*_1_*:*_19499580_*|*_10009_*:*_1_*:*_42434_*|*_5_*:*_1_*:*_168419705_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3274021099"}], "description": "The recursive guard is activated if the same variable is referenced twice. For example:\n\n{code}\nglobal.yaml\na: '%{b} - %{b}'\n{code}\n\nhiera a\n{code}\n/usr/lib/ruby/vendor_ruby/hiera/recursive_guard.rb:13:in `check': Detected in [b] (Hiera::InterpolationLoop)\n{code}\nAlso the error message is not very informative.\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53880", "fixedVersions": ["HI 1.3.2"], "id": "53880", "issueType": "Bug", "key": "HI-115", "labels": ["redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Done", "resolutionDate": "2014-02-20T16:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "hiera recursive guard triggered when there is no recursion", "timeSpent": "PT0S", "updated": "2015-03-10T15:47:00.000000", "votes": "6", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "[~accountid:63d40628f6e1b543161789a7] Why is the RE component on this ticket?", "created": "2013-12-17T17:12:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Because you last updated the facter man pages :)\n\n{noformat}\ncommit 41fc7e078bd0e79deadaaf76f261906b90fc1cc0\nAuthor: Matthaus Litteken <matthaus@puppetlabs.com>\nDate:   Thu Sep 20 12:05:43 2012 -0700\n\n    (#5205) Update facter manpage\n\n    This commit doesn't handle the request in the ticket of dynamically generated\n    manpage, but it does update the man page to have updated flags and help,\n    correct license, copyright holder and copyright year. It also fills in the name\n    of the program for the manpage so that the header doesn't look quite so\n    mysterious.\n{noformat}\n\nSeriously though, I thought you guys did that, but perhaps docs instead?", "created": "2013-12-17T23:43:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "Docs is a better choice. We did it for facter because there was a sort of process outlined in install.rb to update it.", "created": "2013-12-18T11:00:00.000000"}, {"author": "623e74d0a2f6400069ecba48", "body": "Sorry to put your face on this, Nick. I didn't want it to get lost.", "created": "2014-12-01T11:19:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The 'hiera' CLi is now deprecated and is replaced by 'puppet lookup' CLI. The new CLI is part of puppet and has built in help.\nTherefore closing this ticket as a Won't do.", "created": "2017-02-07T07:04:00.000000"}], "components": ["DOCS"], "created": "2013-12-12T13:24:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f1f45c1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys97z:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4831278212_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_94765162201"}], "description": "<pre>\n# apt-get install hiera\n...\n# man hiera\nNo manual entry for hiera\nSee 'man 7 undocumented' for help when manual pages are not available.\n</pre>\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54023", "fixedVersions": [], "id": "54023", "issueType": "Bug", "key": "HI-114", "labels": ["redmine", "simplefix"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Won't Do", "resolutionDate": "2017-02-07T07:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "No man pages for hiera", "timeSpent": "PT0S", "updated": "2017-02-07T07:05:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "We're not going to merge hiera into pe-heira yet. We've decided to wait for the final 1.3.1 tag", "created": "2013-12-12T17:18:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:46:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@446d3bed"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8l3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_348892_*|*_3_*:*_1_*:*_344649_*|*_5_*:*_1_*:*_14851671267_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_94944605"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53529", "fixedVersions": [], "id": "53529", "issueType": "Sub-task", "key": "HI-85", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2013-12-12T17:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge 1.3.1 tag into pe-hiera", "timeSpent": "PT0S", "updated": "2014-06-02T15:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:46:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5d185614"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8kv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_344470_*|*_5_*:*_1_*:*_14852047700_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_94923789"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54022", "fixedVersions": [], "id": "54022", "issueType": "Sub-task", "key": "HI-84", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T17:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update the branches (merge stable into master)", "timeSpent": "PT0S", "updated": "2014-06-02T15:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:46:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@16d434c7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8kn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_339878_*|*_3_*:*_1_*:*_1970350_*|*_5_*:*_1_*:*_14854942390_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_90069034"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53942", "fixedVersions": [], "id": "53942", "issueType": "Sub-task", "key": "HI-83", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T16:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push Packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:45:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5e26492a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8kf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_335699_*|*_3_*:*_1_*:*_4877876_*|*_5_*:*_1_*:*_14852010795_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_90068965"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53979", "fixedVersions": [], "id": "53979", "issueType": "Sub-task", "key": "HI-82", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T17:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push Docs", "timeSpent": "PT0S", "updated": "2014-06-02T15:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:46:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@156722d5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8k7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_331789_*|*_5_*:*_2_*:*_14857036035_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_89932034"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53879", "fixedVersions": [], "id": "53879", "issueType": "Sub-task", "key": "HI-81", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T15:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/No Go meeting", "timeSpent": "PT0S", "updated": "2014-06-02T15:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:91233464-4152-4228-81dd-172d43a52a03", "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "It resolves a variable:\n\n{noformat}\n# echo '---\nfoo: bar' > /var/lib/hiera/global.yaml\n# hiera foo\nbar\n{noformat}\n\nIt gracefully handles an empty file or a file with just the yaml header\n\n{noformat}\n# rm /var/lib/hiera/global.yaml && touch /var/lib/hiera/global.yaml\n# hiera foo\nnil\n# echo --- > /var/lib/hiera/global.yaml\n# hiera foo\nnil\n{noformat}\n\nIt generates an error if the yaml file is malformed:\n\n{noformat}\n# echo 'not yaml' > /var/lib/hiera/global.yaml\n# hiera foo\n/usr/lib/ruby/vendor_ruby/hiera/filecache.rb:56:in `read_file': Data retrieved from /var/lib/hiera/global.yaml is String not Hash (TypeError)\n{noformat}\n", "created": "2013-12-12T13:16:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "-debian squeeze- PASSED", "created": "2013-12-12T13:17:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Um, hiera doesn't have any man pages, filed as HI-114", "created": "2013-12-12T13:25:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "-debian wheezy- PASSED", "created": "2013-12-12T13:27:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "-ubuntu precise- PASSED", "created": "2013-12-12T15:33:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "-centos6- PASSED", "created": "2013-12-12T15:37:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "-gem- PASSED", "created": "2013-12-12T15:43:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "I'm skipping ubuntu-lucid and centos5", "created": "2013-12-12T15:43:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:45:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@749f16c9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8jz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_321108_*|*_3_*:*_1_*:*_11174270_*|*_5_*:*_1_*:*_14857290071_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_78477007"}], "description": "Centos 5/6\nDebian Squeeze/Wheezy\nUbuntu Lucid/Precise\nGem\n\nCheck that\n * {{hiera}} is available.\n * man hiera (except for gems)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53818", "fixedVersions": [], "id": "53818", "issueType": "Sub-task", "key": "HI-80", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T15:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "exploratory testing", "timeSpent": "PT0S", "updated": "2014-06-02T15:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Packages staged at http://builds.puppetlabs.lan/hiera/1.3.1-rc1/", "created": "2013-12-12T11:46:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:45:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@78ab9231"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8jr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_317632_*|*_3_*:*_1_*:*_498522_*|*_5_*:*_1_*:*_14871573335_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_74899040"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53856", "fixedVersions": [], "id": "53856", "issueType": "Sub-task", "key": "HI-79", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T11:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:45:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@724dee73"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8jj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_312976_*|*_3_*:*_1_*:*_81355_*|*_5_*:*_1_*:*_14872037718_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_74814608"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53692", "fixedVersions": [], "id": "53692", "issueType": "Sub-task", "key": "HI-78", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T11:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag to Github", "timeSpent": "PT0S", "updated": "2014-06-02T15:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:45:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@599ca6cf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8jb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_309572_*|*_3_*:*_1_*:*_1139342_*|*_5_*:*_1_*:*_14872049538_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_73743220"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53663", "fixedVersions": [], "id": "53663", "issueType": "Sub-task", "key": "HI-77", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T11:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create version for next version", "timeSpent": "PT0S", "updated": "2014-06-02T15:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:45:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@69f78963"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8j3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_305591_*|*_3_*:*_1_*:*_829577_*|*_5_*:*_1_*:*_14937699604_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_8447688"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53605", "fixedVersions": [], "id": "53605", "issueType": "Sub-task", "key": "HI-76", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-11T17:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs targeted are in the \"Merged Pending Release\" status", "timeSpent": "PT0S", "updated": "2014-06-02T15:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:44:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6fdcb615"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8iv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_299170_*|*_3_*:*_1_*:*_829726_*|*_5_*:*_1_*:*_14937656714_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_8445921"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53527", "fixedVersions": [], "id": "53527", "issueType": "Sub-task", "key": "HI-75", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-11T17:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs targeted at the release have a corresponding commit", "timeSpent": "PT0S", "updated": "2014-06-02T15:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:44:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@33b30936"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8in:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_296000_*|*_3_*:*_1_*:*_831635_*|*_5_*:*_1_*:*_14937666318_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_8443000"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54021", "fixedVersions": [], "id": "54021", "issueType": "Sub-task", "key": "HI-74", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-11T17:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs referenced in commit log have a bug targeted at the release", "timeSpent": "PT0S", "updated": "2014-06-02T15:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623a4c3b4a57610068e6782b", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "A new Hiera-Acceptance-Solaris-stable job is not passing, but it was just added the same day that we started getting a release ready, so we can safely ignore it for this release.", "created": "2013-12-12T11:16:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:44:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3150317b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys8if:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_292164_*|*_3_*:*_1_*:*_65223929_*|*_5_*:*_1_*:*_14873257806_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_8440273"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53941", "fixedVersions": [], "id": "53941", "issueType": "Sub-task", "key": "HI-73", "labels": [], "originalEstimate": "PT0S", "parent": "53977", "parentSummary": "Hiera 1.3.1-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T11:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure tests passing", "timeSpent": "PT0S", "updated": "2014-06-02T15:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:44:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:46:00.000000"}], "components": [], "created": "2013-12-11T14:44:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4dc8ca37"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys46v:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_245059_*|*_3_*:*_1_*:*_5050_*|*_5_*:*_1_*:*_14851437875_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_95511025"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53977", "fixedVersions": ["HI 1.3.1"], "id": "53977", "issueType": "Task", "key": "HI-72", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-12-12T17:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.1-rc1 Release", "timeSpent": "PT0S", "updated": "2015-01-30T06:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:91233464-4152-4228-81dd-172d43a52a03", "attachments": [], "comments": [{"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "This went through CI yesterday, and I functional reviewed it as part of exploratory testing for 1.3.1-rc1", "created": "2013-12-12T18:05:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:44:00.000000"}], "components": [], "created": "2013-12-11T13:40:00.000000", "creator": "623a4c3b4a57610068e6782b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1760bdde"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys46n:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_95635551_*|*_1_*:*_1_*:*_5829_*|*_5_*:*_1_*:*_14848677122_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_6709264"}], "description": "This is an issue causing problems for a lot of users. We need to backport the fix to stable and do a 1.3.1 release", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54020", "fixedVersions": ["HI 1.3.1"], "id": "54020", "issueType": "Task", "key": "HI-71", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4c3b4a57610068e6782b", "resolution": "Fixed", "resolutionDate": "2013-12-12T18:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Backport fix for HI-65 to stable", "timeSpent": "PT0S", "updated": "2014-06-02T15:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request (maint) Add fedora 20 to mock list has been closed.", "created": "2013-12-09T11:48:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Merged to stable in 498416eff released in 1.3.1", "created": "2014-06-02T11:43:00.000000"}], "components": ["Community"], "created": "2013-12-09T11:33:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1015eb3e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys6xb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_15116968905_*|*_6_*:*_1_*:*_0"}], "description": "h2. (maint) Add fedora 20 to mock list\n\n * Author: Melissa <>\n * Company: \n * Github ID: [melissaanne|https://github.com/melissaanne]\n * [Pull Request 166 Discussion|https://github.com/puppetlabs/hiera/pull/166]\n * [Pull Request 166 File Diff|https://github.com/puppetlabs/hiera/pull/166/files]\n\nh2. Pull Request Description\n----\n\n\n\n----\n(webhooks-id: d052e9bcc02c6d4ff982593bf73f41e7)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53526", "fixedVersions": ["HI 1.3.1"], "id": "53526", "issueType": "Task", "key": "HI-70", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-06-02T11:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (166): (maint) Add fedora 20 to mock list - melissaanne", "timeSpent": "PT0S", "updated": "2014-06-02T11:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "623c08e1562ab90069f8aed4", "body": "I just tested it, and the new way breaks under Puppet 2.7 (in PE 2.8). This means we need to allow hiera to switch approaches based on puppet version. :/", "created": "2013-12-04T17:18:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Given that this is an old, stale ticket and much have happened with hiera/lookup since this was first entered, I am closing this as a won't do.\n\nIf there was something here worth picking up again as a valuable feature, please log a new request against the PUP project.", "created": "2017-02-07T07:07:00.000000"}], "components": [], "created": "2013-12-04T17:15:00.000000", "creator": "623c08e1562ab90069f8aed4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@41c5dc81"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CS Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Normal"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys5mf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6243365142_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_94030580068"}], "description": "Hiera's CLI tool does inventory service lookups, and uses a wacky and outdated way to initialize Puppet's settings. It's busted as of Puppet 3.something. Certainly broken in PE 3.0.1.\n\nbin/hiera, ca. ln.95:\n\n{code}\n      require 'puppet/util/run_mode'\n      $puppet_application_mode = Puppet::Util::RunMode[:master]\n      require 'puppet'\n      Puppet.settings.parse\n      Puppet::Node::Facts.indirection.terminus_class = :rest\n      scope = YAML.load(Puppet::Node::Facts.indirection.find(source).to_yaml)\n      # Puppet makes dumb yaml files that do not promote data reuse.\n      scope = scope.values if scope.is_a?(Puppet::Node::Facts)\n{code}\n\nI replaced it with this instead, and it started working again:\n\n{code}\n      require 'puppet'\n      Puppet.initialize_settings()\n      Puppet::Node::Facts.indirection.terminus_class = :rest\n      scope = YAML.load(Puppet::Node::Facts.indirection.find(source).to_yaml)\n      # Puppet makes dumb yaml files that do not promote data reuse.\n      scope = scope.values if scope.is_a?(Puppet::Node::Facts)\n{code}\n\nWhile I'm in here, I don't think that yaml dump/reload is necessary; I tried just calling .values on the object via irb, and it worked fine and gave me what I expected. (I ==-ed it against the same object via yaml roundtrip too, and it said they were the same.)\n\nAnyway, before checking the fix in, we need to check to see if the new Puppet 3 compatible way breaks Hiera under 2.7.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53662", "fixedVersions": [], "id": "53662", "issueType": "Bug", "key": "HI-69", "labels": ["regression"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c08e1562ab90069f8aed4", "resolution": "Won't Do", "resolutionDate": "2017-02-07T07:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "CLI inventory service lookup doesn't work with Puppet 3", "timeSpent": "PT0S", "updated": "2017-02-07T07:07:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request Use the same kind of gem source switching as Puppet has been closed.", "created": "2013-12-04T10:30:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "This was merged in https://github.com/puppetlabs/hiera/commit/2aa5bfb3be86ca031d3105c48893b06fa0dfffc5 and released in hiera 1.3.1", "created": "2014-06-02T11:36:00.000000"}], "components": ["Community"], "created": "2013-11-27T11:12:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@d7358de"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys3f3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_16154697278_*|*_6_*:*_1_*:*_0"}], "description": "h2. Use the same kind of gem source switching as Puppet\n\n * Author: Justin Stoller <justin.stoller@gmail.com>\n * Company: \n * Github ID: [justinstoller|https://github.com/justinstoller]\n * [Pull Request 165 Discussion|https://github.com/puppetlabs/hiera/pull/165]\n * [Pull Request 165 File Diff|https://github.com/puppetlabs/hiera/pull/165/files]\n\nh2. Pull Request Description\n----\n\nThis is clean up for consistency's sake\n\n----\n(webhooks-id: b20755ec0b1245ab7baa28f059e4ba2e)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53854", "fixedVersions": ["HI 1.3.1"], "id": "53854", "issueType": "Task", "key": "HI-68", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-06-02T11:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (165): Use the same kind of gem source switching as Puppet - justinstoller", "timeSpent": "PT0S", "updated": "2014-06-02T11:37:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request use pooling api has been closed.", "created": "2013-12-04T10:30:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "This was merged to stable in 9248fa4e and released in 1.3.1", "created": "2014-06-02T11:39:00.000000"}], "components": ["Community"], "created": "2013-11-25T18:13:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4ad5713d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys2x3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_16302407562_*|*_6_*:*_1_*:*_0"}], "description": "h2. use pooling api\n\n * Author: Justin Stoller <justin.stoller@gmail.com>\n * Company: \n * Github ID: [justinstoller|https://github.com/justinstoller]\n * [Pull Request 164 Discussion|https://github.com/puppetlabs/hiera/pull/164]\n * [Pull Request 164 File Diff|https://github.com/puppetlabs/hiera/pull/164/files]\n\nh2. Pull Request Description\n----\n\n@sschneid has signed off on rolling out the pooling, so here's a commit that enables it across your newest configs!\n\n----\n(webhooks-id: b075e07eeaef28ae0df621030f1ebaf0)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53816", "fixedVersions": ["HI 1.3.1"], "id": "53816", "issueType": "Task", "key": "HI-67", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-06-02T11:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (164): use pooling api - justinstoller", "timeSpent": "PT0S", "updated": "2014-06-02T11:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request use configurable gem source has been closed.", "created": "2013-11-25T15:35:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Merged in https://github.com/puppetlabs/hiera/commit/b29974bf00f898f4e5a3f7736e69dd5e6f1a1bb4", "created": "2014-02-27T17:16:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:44:00.000000"}], "components": ["Community"], "created": "2013-11-25T15:23:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@63218820"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys2rb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_8128371829_*|*_5_*:*_1_*:*_8198874774_*|*_6_*:*_1_*:*_0"}], "description": "h2. use configurable gem source\n\n * Author: Justin Stoller <justin.stoller@gmail.com>\n * Company: \n * Github ID: [justinstoller|https://github.com/justinstoller]\n * [Pull Request 163 Discussion|https://github.com/puppetlabs/hiera/pull/163]\n * [Pull Request 163 File Diff|https://github.com/puppetlabs/hiera/pull/163/files]\n\nh2. Pull Request Description\n----\n\nThis uses the code that already exists in the Facter repo (for consistency) to allow the gem source when `bundle install`ing to be set by an environment variable.\n\n----\n(webhooks-id: d1f289ddf7d41417983046da2f8ab564)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53525", "fixedVersions": [], "id": "53525", "issueType": "Task", "key": "HI-66", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2014-02-27T17:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (163): use configurable gem source - justinstoller", "timeSpent": "PT0S", "updated": "2014-06-02T15:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2013-11-22T17:00:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request ignore empty yaml files has been closed.", "created": "2013-12-09T17:58:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "adrienthebo commented:\n\nMerged into master", "created": "2013-12-09T18:00:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Verified in pl-hiera-af58ecb698b57e2f536803d545b3d2a18e2b107c.\n\nEmpty YAML files and those with just a header (\"---\\n\"), get ignored.\n\n", "created": "2013-12-10T12:46:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:43:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Unclosing 1.4.0 tickets.", "created": "2014-06-02T16:01:00.000000"}], "components": ["Community"], "created": "2013-11-22T15:35:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@46da0f4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys48f:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_51320104_*|*_1_*:*_1_*:*_1028356462_*|*_10009_*:*_1_*:*_16138188_*|*_5_*:*_2_*:*_40625155447_*|*_6_*:*_2_*:*_1064767_*|*_10006_*:*_1_*:*_449236849"}], "description": "h2. ignore empty yaml files\n\n * Author: Daniel De Marco <>\n * Company: \n * Github ID: [leinaddm|https://github.com/leinaddm]\n * [Pull Request 162 Discussion|https://github.com/puppetlabs/hiera/pull/162]\n * [Pull Request 162 File Diff|https://github.com/puppetlabs/hiera/pull/162/files]\n\nh2. Pull Request Description\n----\n\nYAML.load returns nil for an empty file.\n'next if data.empty?' would raise an exception if reached.\n\n----\n(webhooks-id: 707b3d754cd22c1babaf9a7b8606c473)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53938", "fixedVersions": ["HI 2.0.0"], "id": "53938", "issueType": "Task", "key": "HI-65", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2013-12-10T12:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (162): ignore empty yaml files - leinaddm", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "hiera tag 1.3.0 merged into pe-hiera 3.2.x", "created": "2013-11-21T14:55:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:43:00.000000"}], "components": [], "created": "2013-11-19T14:43:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@336e81f8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0on:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_173537644_*|*_5_*:*_1_*:*_16674491219_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54017", "fixedVersions": [], "id": "54017", "issueType": "Sub-task", "key": "HI-64", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T14:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Merge 1.3.0 tag into pe-hiera", "timeSpent": "PT0S", "updated": "2014-06-02T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I'm fairly sure this already happened when I merged the 1.3.0 tag into master, but I'm still a little confused about this ticket", "created": "2013-11-21T14:34:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:43:00.000000"}], "components": [], "created": "2013-11-19T14:42:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@54dfa051"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0of:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_172307818_*|*_5_*:*_1_*:*_16675729898_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53936", "fixedVersions": [], "id": "53936", "issueType": "Sub-task", "key": "HI-63", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T14:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update the branches (merge stable into master)", "timeSpent": "PT0S", "updated": "2014-06-02T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Packages are live", "created": "2013-11-21T14:14:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:43:00.000000"}], "components": [], "created": "2013-11-19T14:42:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@69b1d35a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0o7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_171127527_*|*_5_*:*_1_*:*_16676924566_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53974", "fixedVersions": [], "id": "53974", "issueType": "Sub-task", "key": "HI-62", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T14:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push Packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://docs.puppetlabs.com/hiera/1/release_notes.html#hiera-130", "created": "2013-11-21T14:57:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:42:00.000000"}], "components": [], "created": "2013-11-19T14:42:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@b7fd7a2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0nz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_173726680_*|*_5_*:*_1_*:*_16674314619_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53876", "fixedVersions": [], "id": "53876", "issueType": "Sub-task", "key": "HI-61", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T14:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push Docs", "timeSpent": "PT0S", "updated": "2014-06-02T15:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "++ from Eric, Kylo, Nick F., and Andy", "created": "2013-11-21T11:01:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:42:00.000000"}], "components": [], "created": "2013-11-19T14:42:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@64702384"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0nr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_159582309_*|*_5_*:*_1_*:*_16688463219_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53815", "fixedVersions": [], "id": "53815", "issueType": "Sub-task", "key": "HI-60", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T11:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/No Go meeting", "timeSpent": "PT0S", "updated": "2014-06-02T15:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages tested for rc2, no subsequent changes were made", "created": "2013-11-21T14:14:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:42:00.000000"}], "components": [], "created": "2013-11-19T14:41:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@264564f3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0nj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_171142013_*|*_5_*:*_1_*:*_16676911937_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53851", "fixedVersions": [], "id": "53851", "issueType": "Sub-task", "key": "HI-59", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T14:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "exploratory testing", "timeSpent": "PT0S", "updated": "2014-06-02T15:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Packages built and shipped", "created": "2013-11-21T14:13:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:42:00.000000"}], "components": [], "created": "2013-11-19T14:41:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4b8f1be3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0nb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_171126495_*|*_5_*:*_1_*:*_16676931341_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53690", "fixedVersions": [], "id": "53690", "issueType": "Sub-task", "key": "HI-58", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T14:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:42:00.000000"}], "components": [], "created": "2013-11-19T14:41:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1682f019"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0n3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_159591005_*|*_5_*:*_1_*:*_16688468973_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53660", "fixedVersions": [], "id": "53660", "issueType": "Sub-task", "key": "HI-57", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T11:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag to Github", "timeSpent": "PT0S", "updated": "2014-06-02T15:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I suppose I should have created 1.3.0-rc2, but for the last release I went straight to 1.3.0", "created": "2013-11-19T15:25:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:42:00.000000"}], "components": [], "created": "2013-11-19T14:41:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4a7e8def"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0mv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2666557_*|*_5_*:*_1_*:*_16845400852_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53604", "fixedVersions": [], "id": "53604", "issueType": "Sub-task", "key": "HI-56", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-19T15:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create version for next version", "timeSpent": "PT0S", "updated": "2014-06-02T15:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "None currently open", "created": "2013-11-19T15:17:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:41:00.000000"}], "components": [], "created": "2013-11-19T14:41:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1b5824ac"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0mn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2166336_*|*_5_*:*_1_*:*_16845876593_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53524", "fixedVersions": [], "id": "53524", "issueType": "Sub-task", "key": "HI-55", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-19T15:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs targeted are in the \"Merged Pending Release\" status", "timeSpent": "PT0S", "updated": "2014-06-02T15:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "No change from Hiera 1.3.0-rc2", "created": "2013-11-19T15:16:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:41:00.000000"}], "components": [], "created": "2013-11-19T14:40:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1ae51f5c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0mf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2183135_*|*_5_*:*_1_*:*_16845883746_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54016", "fixedVersions": [], "id": "54016", "issueType": "Sub-task", "key": "HI-54", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-19T15:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs targeted at the release have a corresponding commit", "timeSpent": "PT0S", "updated": "2014-06-02T15:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "No change from 1.3.0-rc2", "created": "2013-11-19T15:16:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:41:00.000000"}], "components": [], "created": "2013-11-19T14:40:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@921b720"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0m7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2187255_*|*_5_*:*_1_*:*_16845892440_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53935", "fixedVersions": [], "id": "53935", "issueType": "Sub-task", "key": "HI-53", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-19T15:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs referenced in commit log have a bug targeted at the release", "timeSpent": "PT0S", "updated": "2014-06-02T15:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:41:00.000000"}], "components": [], "created": "2013-11-19T14:39:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@15cc59a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0lz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1879272_*|*_5_*:*_1_*:*_16846238071_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53972", "fixedVersions": [], "id": "53972", "issueType": "Sub-task", "key": "HI-52", "labels": [], "originalEstimate": "PT0S", "parent": "53875", "parentSummary": "Hiera 1.3.0 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-19T15:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure tests passing", "timeSpent": "PT0S", "updated": "2014-06-02T15:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Announce email sent, and PSA posted on IRC #puppet", "created": "2013-11-21T14:33:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Hiera 1.3.0 has been shipped!", "created": "2013-11-21T14:58:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:41:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:47:00.000000"}], "components": [], "created": "2013-11-19T14:38:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4f99d4b8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0lr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_173967168_*|*_5_*:*_1_*:*_16674195161_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53875", "fixedVersions": [], "id": "53875", "issueType": "Task", "key": "HI-51", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-21T14:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.0 Release", "timeSpent": "PT0S", "updated": "2015-01-30T06:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "This was resolved by HI-298.", "created": "2015-01-29T03:51:00.000000"}], "components": ["PE"], "created": "2013-11-12T17:12:00.000000", "creator": "70121:b72c16a2-594d-45f8-90bc-c6bc6c9510a8", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@17e264ca"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623c11c0a2f6400069eb7af8"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyryn3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10819_*|*_5_*:*_1_*:*_4802329339_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_38227133590"}], "description": "{noformat}\n1) Hiera::Util Hiera::Util.config_dir should return the correct path for posix systems\n     Failure/Error: Hiera::Util.config_dir.should == '/etc'\n       expected: \"/etc\"\n            got: \"/etc/puppetlabs/puppet\" (using ==)\n     # ./spec/unit/util_spec.rb:26:in `block (3 levels) in <top (required)>'\n{noformat}\n\nThis seems like a pretty pointless test anyway.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53689", "fixedVersions": ["HI 2.0.0"], "id": "53689", "issueType": "Bug", "key": "HI-50", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:b72c16a2-594d-45f8-90bc-c6bc6c9510a8", "resolution": "Fixed", "resolutionDate": "2015-01-29T03:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "pe-hiera unit tests check incorrect etc path", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2013-11-12T20:00:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "kylog commented:\n\nCan you amend the commit message to s/Solaris and Facter/Solaris and Windows/ ?\n", "created": "2013-11-13T12:40:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "branan commented:\n\n@kylog done\n", "created": "2013-11-13T12:47:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request (#23140) Support deploying to Solaris and Windows vcloud machines has been closed.", "created": "2013-11-13T15:30:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:41:00.000000"}], "components": ["Community"], "created": "2013-11-12T16:55:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3e2ae356"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrylj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1887555379_*|*_5_*:*_1_*:*_15557148951_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_13572"}], "description": "h2. (#23140) Support deploying to Solaris and Facter vcloud machines\n\n * Author: Branan Purvine-Riley <branan@puppetlabs.com>\n * Company: Puppet Labs\n * Github ID: [branan|https://github.com/branan]\n * [Pull Request 161 Discussion|https://github.com/puppetlabs/hiera/pull/161]\n * [Pull Request 161 File Diff|https://github.com/puppetlabs/hiera/pull/161/files]\n\nh2. Pull Request Description\n----\n\nPreviously, the acceptance suite could only target linux boxen. This\ncommit adds beaker configs for solaris and windows, and also makes the\nsetup steps more cross-platform-friendly.\n\n----\n(webhooks-id: ff0664c22a9c00820929be710654efa2)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53849", "fixedVersions": [], "id": "53849", "issueType": "Task", "key": "HI-49", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2013-12-04T13:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (161): (#23140) Support deploying to Solaris and Facter vcloud machines - branan", "timeSpent": "PT0S", "updated": "2014-06-02T15:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "In general, calling out the offending data source is much better than raising whatever error message the backend produced. In the case of YAML errors, the messages produced by the parser can be particularly obtuse.\n\nThis situation is aggravated by Ruby 1.9 and newer which uses the Psych YAML parser which is stricter than the old Syck parser. Syck (used in 1.8.x) will accept the unquoted version of {{%{::ipaddress}:80}} while Psych will reject it with the unhelpful error message referenced in the description of this ticket.", "created": "2014-01-11T12:33:00.000000"}], "components": [], "created": "2013-11-07T08:54:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6df71f03"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrwx3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Jan/14"}], "description": "This is the error message I was seeing \n\n{code}\n    err: Could not retrieve catalog from remote server: Error 400 on SERVER: (<unknown>): found character that cannot start any token while scanning for the next token at line 43 column 5\n    warning: Not using cache on failed catalog\n    err: Could not retrieve catalog; skipping run\n{code}\n\nafter some poking around i found a problem\n\n{code}\n    listen:\n    \t- %{::ipaddress}:80\n{code}\n\nThe working syntax would be the DOUBLE quoted one \n\n{code}\n    listen:\n    \t- \"%{::ipaddress}:80\"\n{code}\n\nCould error message be improved to contain the filename?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53523", "fixedVersions": [], "id": "53523", "issueType": "Bug", "key": "HI-48", "labels": ["customer", "redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "YAML syntax errors should mention the fielname", "timeSpent": "PT0S", "updated": "2014-01-11T12:33:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The requested functionality can now be achieved with puppet/hiera. Closing this as fixed.", "created": "2017-02-07T07:09:00.000000"}], "components": [], "created": "2013-11-06T12:41:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@46a85749"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrwhb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_8677857277_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_94031808229"}], "description": "It would be useful if there were multiple ways to look up arrays and hashes in hiera.\n\nE.g. currently, if you use the yaml backend, and do a hash lookup, it will always do a merge.\n\nYou can control this with native, deep, and deeper merge functionality, but there is no way to specify a priority lookup instead of a merge lookup.\n\nIt would be useful if there were functions for this. E.g. hiera_hash_priority() or similar.\n\nIt might also be useful as a tunable with databindings + parameterized classes, on a per-class basis.\n\nA reasonable implementation might be:\n\n    class this_class (default_lookup = deeper_merge, $parameter_1 = {}, $parameter_2 = {}) {} \n\nHowever we're now mixing tunable parameters that affect puppet configuration with parameters that effect the way the class itself should be evaluated, so I'm not sure if that's the right way to do it.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53848", "fixedVersions": [], "id": "53848", "issueType": "New Feature", "key": "HI-47", "labels": ["customer", "redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Fixed", "resolutionDate": "2017-02-07T07:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "No way to control hiera array and hash merge types from puppet", "timeSpent": "PT0S", "updated": "2017-02-07T07:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2", "body": "Separate hiera.yaml files are necessary because different environments may need different hierarchies/backends specified.", "created": "2013-12-16T01:17:00.000000"}, {"author": "623a438bbef8a60068c6c746", "body": "We need a per environment router.  Pronto.", "created": "2014-03-19T09:19:00.000000"}, {"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "Even if you specify hiera_config to use the $environment variable it is only loaded once upon startup so you end up with $envrionment = production.  \n\n{noformat}\nhiera_config = $confdir/environments/$environment/hiera.yaml\n{noformat}\n\nEnds up being equivalent to:\n\n{noformat}\nhiera_config = $confdir/environments/production/hiera.yaml\n{noformat}", "created": "2014-03-31T15:12:00.000000"}, {"author": "623c1291bef8a60068c79a8a", "body": "In the environment support research with Puppet Test Pilots, we have several users requesting this feature \"hiera.yaml be aware of environments\"", "created": "2014-04-04T10:21:00.000000"}, {"author": "70121:7f959f3c-1db8-4fac-ae84-9197007516a4", "body": "This is a major problem with increasing priority as the hiera gets more and more inevitable. The puppet's environments are great but to really be able to test complex changes, this bug must be resolved.", "created": "2014-06-11T01:58:00.000000"}, {"author": "557058:a6dccde5-03f1-4b84-9e4f-8b093b790c6d", "body": "solved by prefixing each {{hierarchy}} item in {{hiera.yaml}} with {{%{::environment}/}}. having separate hiera subtrees checked out for each branch/environment.", "created": "2014-06-11T05:21:00.000000"}, {"author": "557058:a6dccde5-03f1-4b84-9e4f-8b093b790c6d", "body": "problem with having separate {{hierachy}} definition for each branch/environment is still open though.", "created": "2014-06-11T05:23:00.000000"}, {"author": "557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2", "body": "[~accountid:557058:a6dccde5-03f1-4b84-9e4f-8b093b790c6d] It is not solved by prefixing each level of the hierarchy with an environment. hiera_hash() and hiera_array() will merge data from the entire hierarchy which allows data from one environment to leak into another.", "created": "2014-06-11T10:04:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "those functions only take data from the hierarchy that matches the node. So it will work fine", "created": "2014-06-11T10:08:00.000000"}, {"author": "557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2", "body": "[~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd] If you knew the other environment names, couldn't you just specify your environment as another one and access their data?\n\nAlso, how does it solve the issue of different environments using multiple backends?", "created": "2014-06-11T10:17:00.000000"}, {"author": "557058:c5ea6c35-c500-4334-8131-e031af9f81a4", "body": "Garret, I'm not sure that preventing people from poking under the hood is necessary. I'm aware of one site that does this extensively and considers it a feature. That's a YMMV issue :)\n\nI totally agree with you that separate hiera.yaml files are useful for configuring different backends and hierarchy paths. However, one could argue that this perhaps marks the distinction where a separate Puppet server is necessary. I personally don't think it's a problem to mark the hiera hierarchy as the boundary distinction between distinct servers. Given how trivial it is to run N puppet servers on the same box sharing some common module paths, this is perhaps a documentation request more than a technical problem.\n\nAll IMHO naturally, and I have no clue how this would impact PE product. I suspect its only a few man-days worth of effort to autobuild distinct servers from the control panel. (I've built such a thing in roughly half a day for a customer, although I was able to re-use their existing web panel and tune it specifically to their needs so my scope was less)", "created": "2014-06-11T11:44:00.000000"}, {"author": "557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2", "body": "[~accountid:557058:c5ea6c35-c500-4334-8131-e031af9f81a4] Your work around of using multiple puppet masters is very interesting, but still a work around for what this ticket aims to solve. If Puppet could use different Hiera configurations, separate puppet masters would not be needed.", "created": "2014-06-11T11:56:00.000000"}, {"author": "557058:c5ea6c35-c500-4334-8131-e031af9f81a4", "body": "I understand, but if it was my project I would question if there was a demonstrable need that justified the effort. From what I have seen of these internals, you're looking at a pretty significant refactor. IMHO and I'll shut up as my opinion is expressed ", "created": "2014-06-11T12:06:00.000000"}, {"author": "557058:1019c0c3-ad91-4a7a-9c3b-f25baf4e3213", "body": "This is covered a bit in the original Redmine ticket, but the real importance of having environment specific hiera.yaml files comes down to how you release changes to the hierarchy.\n\nIt's a very common pattern to use multiple environments (very often tied to a VCS branch) to test changes before they get merged into a mainline/moved to production. With hiera.yaml being the same across all environments, it is extremely inconvenient to make a hierarchy change in dev or a feature branch before merging or deploying to production servers. This seriously cripples many organizations' ability to test changes to the code base, since hierarchy changes need to be done all at once.\n\nThe argument for this feature is that hiera.yaml should not be any different in terms of how it can be tested from the hieradata itself (which can reference $environment) or the puppet modules and manifests. The only way to do this testing without allowing multiple environment-specific versions of hiera.yaml is to have a separate master for each application landscape and manually move hiera.yaml changes among them. This is, of course, extremely impractical if you're trying to test short-lived feature branches.", "created": "2014-06-11T13:17:00.000000"}, {"author": "557058:c5ea6c35-c500-4334-8131-e031af9f81a4", "body": "I agree with the essence of what you are saying but \"impossible\" it is not.  Create another server with a distinct hiera.yaml file and reference the same manifest and module directories. It's like 3 minutes of work if you are hacking fast, and less than an hour's work to build scripts that will build such environments on demand.\n\nSo I agree with you -- but back off from \"impossible\" to \"requires a non-standard config\" which is a completely different level of need.", "created": "2014-06-11T17:18:00.000000"}, {"author": "557058:c5ea6c35-c500-4334-8131-e031af9f81a4", "body": "There is really nothing \"extreme\" about the difficulty. I have this working at several sites. If you do it without a script it's like 5 commands on the command line total. The implementation of multiple servers with shared paths is trivial to implement and easy to understand. It's not \"extreme\" except in the sense of \"extremely elegant\" ", "created": "2014-06-11T19:37:00.000000"}, {"author": "5b1e529cba383e0814003fb3", "body": "I rather think that the whole point of the ticket is so you *don't* have to create another distinct puppet master to be able to traverse a different hierarchy in hiera.", "created": "2014-06-12T06:03:00.000000"}, {"author": "623e797fd32a94006a65d711", "body": "While multiple masters are easy to setup - for both open source and Enterprise users, each master will consume at least one Enterprise license, and potentially 3 licenses if a split install is used. \n\nSo using multiple masters is one possible workaround for some cases, it is not always a practical or viable one.\n\nThere is also the cost that comes into effect. While spinning up a new VM is usually relatively cheap, it is not always an insignificant cost in terms of time, effort, hardware and licensing.", "created": "2014-06-12T06:41:00.000000"}, {"author": "557058:64ca4fa0-8844-4225-a385-6418cce9d823", "body": "This is a feature ticket right ?  I _want_ this for supporting different backends.  Having a separate hiera.yaml underneath the environmentpath would prevent me from having to have multiple masters (my current work around).  It is a simplification of my setup, and is in line with the separate environment work being done.\n", "created": "2014-06-12T10:27:00.000000"}, {"author": "557058:ddaa4b87-3b61-49bb-98f9-56fd02cdbb6b", "body": "Is there anything about environments that couldn't be easily scripted out to multiple Puppet masters? The fact that I *could* script a workaround doesn't mean that I should *have to*.\n\nAssuming that {{hiera.yaml}} is interpreted for each environment is a very common mistake. If we choose not to support the commonly expected functionality, we should have a damn good reason why not. Having a workaround for it is not a good reason.", "created": "2014-06-12T12:56:00.000000"}, {"author": "557058:c5ea6c35-c500-4334-8131-e031af9f81a4", "body": "\"While spinning up a new VM is usually relatively cheap\"\n\nNobody said new VM. I've run ~20 puppet masters from the same host, sans any virtualization. This is what I mean by \"trivial\" -- a few commands at the shell, viola you have a new puppetmaster with an identical everything except a different hiera.yaml.\n\nThe point of my argument is that this is a relatively unimportant problem with a trivial workaround. There are MAYBE 50 sites feeling pain with this problem, and I'll bet that most of them have already built their own workaround.\n\nThere are many SERIOUS problems with Puppet that have been waiting YEARS to get addressed. If we have some free hours, let's solve real problems that big environments are having to work around every day?  Look at my bug list, there's hard issues on there waiting for someone to address.\n\nHow about nailing any of the half dozen bugs that make tagmail useless, including the recent decision to send 400 deprecation messages a minute via tagmail? Or how about the deadlocks in the puppetdb result forwarding which drag the puppetmaster down and make it implausible for large sites?", "created": "2014-06-12T20:55:00.000000"}, {"author": "557058:c5ea6c35-c500-4334-8131-e031af9f81a4", "body": "\"Is there anything about environments that couldn't be easily scripted out to multiple Puppet masters?\"\n\nFallback module paths. That was easy. I can list dozens. If you're going to pick a rhetorical question make it one with technical merit ", "created": "2014-06-12T21:07:00.000000"}, {"author": "623c17e87910a200718b97e5", "body": "[~accountid:557058:c5ea6c35-c500-4334-8131-e031af9f81a4] the debate about whether or not environment use is appropriate may be valid, but based on what data do you base your count about the number of sites where this is a serious issue?\n\nPervasiveness isn't a \"back of the napkin\" measure. This affects more users than you realize, and restrains sensible best practices patterns to the limitations of the tool rather than the appropriate design.", "created": "2014-06-13T10:17:00.000000"}, {"author": "557058:64ca4fa0-8844-4225-a385-6418cce9d823", "body": "31 votes, 40 watcher.  If I did my query correct, this is the highest voted ticket in Jira.  That in itself is pretty sad, but It is either being gamed (weird?), or it affects more sites than any other issue.", "created": "2014-06-13T10:25:00.000000"}, {"author": "557058:c5ea6c35-c500-4334-8131-e031af9f81a4", "body": "Is this really a request for a war of votes? That having entire IT departments of big companies log in and express their annoyance through clicks means more than having the most engaged person on the team attempt to reason wtih you?\n\nHow about the three multi-national companies I'm working with who are not renewing their PE licensing because they're reinvesting that money instead to build out a team to maintain an internal branch because their constant and repeated attempts to get critical bugs fixed achieves nothing? And yes they have expressed that exact sentiment to their salespeople. \n\nEvery one of us has patches sitting unanswered, uncategorized that are critical problems that affect hundreds of companies. Through prioritizations like this, Puppet Labs does a fantastic job of ensuring that nobody submits code back to the project because it has been shown to be a waste of time and effort. We can't even get the problems considered.", "created": "2014-06-13T12:39:00.000000"}, {"author": "623c17e87910a200718b97e5", "body": "[~accountid:557058:c5ea6c35-c500-4334-8131-e031af9f81a4] I didn't ask for a war of clicks, I asked for data indicating that the problem is not as pervasive as you believe it to be. You have presented me with anecdotal information.\n\nI'd appreciate if you'd reach out privately if you have information about customers who are not renewing for this reason so that we can close the loop.\n\nMeanwhile with regard to the importance of this ticket - as somebody who has spent a lot of time in the field, the perspective from there is deeply distorted. Field/consulting work provides a perspective on the needs of a self-selected and atypical group of users to begin with. Extending that to field/consulting data collected by one individual and not a team means that what you've got is a some data that has to fit into an overall heat map.\n\nIn short: not all users use the features you do and you won't care about the features they do. That doesn't mean their needs are less important than yours or vice versa, and it also doesn't mean that the loudest voice gets to shout down a feature request that's critical to our users. What's more, features are not selected for work solely based on pervasiveness OR severity. It's a combination of those questions in addition to helping particular and focused market segments succeed with the product. That means sometimes code you just don't care about it going to get some attention, because a nontrivial number of other people DO care about it.\n\nInformal polling of our Pro Services team has found the exact opposite of the data you suggest. I suspect the truth is somewhere in the middle.", "created": "2014-06-13T12:46:00.000000"}, {"author": "557058:bf5a30a2-18ae-4f78-ba57-fe17fe0a45ec", "body": "[~accountid:623c17e87910a200718b97e5] This sentiment is appreciated by us small guys who bought Puppet Enterprise because it's ease of deployment and manageability, not because of it's massive scalability and ability to get bugs resolved within hours/days. I am a single admin with 4-5 critical roles and I need the deployment, development workflow to be as efficient and streamlined as possible.\n\n[~accountid:557058:c5ea6c35-c500-4334-8131-e031af9f81a4] Consider yourself fortunate to have an entire team(s) to maintain an internal branch of puppet. This bug actually hinders a best practice workflow and for small teams like mine for example where I AM the team, a small overhead of deploying multiple puppetmasters turns out to be a large overhead. I need the development and deployment workflow to be as streamlined and efficient as possible. This bug is actually a wrench in the cogs to accomplishing this. Multiple puppetmasters introduces complexity and with complexity comes more complexity. Nodes now need to not only be configured to point to a separate environment they must then be pointed to a separate puppetmaster. More moving parts here. I believe your understating the introduction of complexity here. If puppet's goal is to simplify the life of the sysadmin let's not code for the exception but to the standard. Now if the standard is multi-national conglomerates I suppose I'm out of luck in that case. I have worked with MANY software companies and I personally have found Puppet one of the most receptive to suggestions on the road map. I certainly hope that remains the case and the product doesn't massively increase in complexity simply biggest the largest bidder has complex requirements.\n", "created": "2014-06-13T13:12:00.000000"}, {"author": "557058:12a58d89-42a5-430b-b372-a4f7b5508274", "body": "Add me to the 'this is a big problem that needs to be fixed' camp.  ", "created": "2014-06-18T02:14:00.000000"}, {"author": "70121:6c1967ba-7f67-4198-a49f-da4571068123", "body": "Its sooooo stupid this hasn't been fixed yet. It's probably like a 2 line change somewhere.\n\nAnd yes, it is a huge problem. HUGE. It's the weak link in managing a multi-team puppet infrastructure.", "created": "2014-06-18T18:17:00.000000"}, {"author": "557058:b9701f0f-390d-40c1-9497-9ac96dbd3ab1", "body": "\nI dont understand the reluctance to do this - it doesn't seem to be a major architectural change and the level of interest in this ticket suggests there is enough demand.   My take on it is, puppet directory environments are a great way to do several things, including", "created": "2014-07-04T08:33:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Please understand that the support for directory based environments was no easy thing to implement and we were plagued by all sorts of unpleasant surprises along the way. What seemed like a trivial thing to implement caused us months of work, and we are not sure we chased out all of the demons yet. Throwing yet another complex thing like hiera into the mix until the environment support works as it should would have been a very very bad idea. (By complex here, it is more the implications of how you need to be able to configure things, how they combine, etc. than the actual hiera technology).\n\nAt the moment, the environment handling supports both legacy and directory based environments. This blocks us from performing clean up of the code until the legacy environment support has been removed. Environments also come into play on the agent (!) and environments are reused across agent and master code when running puppet apply. The amount of code, and assumptions about how things work that permeate the code base (and the thousands of tests) was a quite substantial task to tackle, and we did reach a point were we were just about ready to reverse the work and not add the directory environment support at all as it started to threaten getting the new language features released in Puppet 4.0. \n\nDuring this time, also having a discussion about additional features on top of the directory environments was simply something we had to put off.\n\nAnd no, it is not a two line change somewhere. The startup order of puppet, settings, applications, faces, environments, indirections, etc. is incredibly complex. A two line change may in fact buy you an even dozen can of worms individually labeled with things like performance, caching, startup order, command line overrides, data binding API, etc. etc.\n\nI know the next question is WHEN? I honestly cannot answer that, but I can say that this will neither happen in 3.7 nor 4.0 (that will follow short after 3.7 as it is intended to be a cleanup and removal release and a switch to the \"future parser/evaluator\"). The team is fully booked for this work (and on that note, I should probably mention that, yes we are hiring).", "created": "2014-07-04T10:01:00.000000"}, {"author": "557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2", "body": "Puppet Labs, could you please provide a status update on this request and where it fits into your road map?\n\nThank you!", "created": "2014-10-23T16:37:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Current status is that 4.0 was pushed out to end of the year, and the current plan includes providing a good way to plug in the \"hiera data in modules\"-module. We know that handling one hiera per environment is high on the wish list but I am uncertain if it will make it into 4.0. We have infrastructure and cleanup things that stand in the way - the system is creating way too many instances of Environment at the moment and this needs to be fixed in order to tie more things to the environment (like a hiera) - it may be that the work on wiring \"hiera-data-in-modules\" solves part of this problem and we may be able to support one hiera per environment because of that, but that work is not completed yet - so no promises", "created": "2014-10-23T18:58:00.000000"}, {"author": "557058:bd60f12a-738f-4ffd-8eb9-230ade09fea4", "body": "I thought I'd mention this is a dependency of an r10k feature as well: \nhttps://github.com/puppetlabs/r10k/issues/195", "created": "2015-01-30T08:19:00.000000"}, {"author": "557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2", "body": "As 4.0 draws near, is this going to make it in?", "created": "2015-01-30T23:31:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "PUP-1640 is in Puppet 4.0.0 - that is the mechanism that allows modules, and the environment to specify which technology to use to lookup data. It comes with a default implementation based on calling functions. Support for other technologies to be supplied in modules. I know [~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd] is working on an implementation for Hiera.\n\nHiera is currently a singleton service which makes it difficult to make it support modules and environments. The hiera code base needs to be refactored to allow multiple hierarchies in the same runtime. Doing this major change is an open issue.", "created": "2015-01-31T03:21:00.000000"}, {"author": "557058:ef8a628c-d922-4071-8070-585f0ad47fad", "body": "Is this really a bug in the enterprise pricing model?\n\nAs far as I can tell if you want to make guaranteed safe changes to the hiera backend (or indeed your enc, if you have one) then IMO you are best off having a separate puppetmaster per environment.\nThis gives you a place to test changes to hiera (and enc) before rolling out onto higher environments, then eventually live.\n\nWith a few soft links and multiple puppermaster service definitions you can probably easily have this in one environment, but why would you do that?\nDo you really want the new guy applying a change to your dev hiera/modules/enc on the same server as you host your live code.\nAnd how do you test OS patch updates to the puppetmaster server itself without multiple puppetmasters?\n\nWe are aiming for the same release process for puppetmaster and related modules and config as we have for _any other application_ in our organisation.\nSo we can take a tagged version from SVN, build it into a tar file, and promote the same tar file through the environments.\nThen looking in SVN, hiera is then the only place that has environment specific information.\n\nDo organisations put all environments onto one box because of costs associated to the Enterprise pricing model?\n\nI appreciate this seems to go against the vision of Puppet 4.0, but I personally think the vision is either flawed or I have misunderstood it.\n", "created": "2015-02-10T10:08:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:ef8a628c-d922-4071-8070-585f0ad47fad] You bring up very good points - the problems you point out (together with a lot of other problems / considerations) lead to the \"agnostic approach\" in PUP-1640 which is the start of the implementation where modules and environments can have their own set of data (in other words 'have its own hiera with its own hierarchy'). In the very first implementation we cannot make this work with the existing hiera since it only supports a single hierarchy, possibly one that points into environment specific locations. That is what people are using today", "created": "2015-02-10T15:38:00.000000"}, {"author": "557058:ef8a628c-d922-4071-8070-585f0ad47fad", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] I'm not sure I understand the use-case for PUP-1640, other than I can see why a module developer wants a tidy way to specify defaults for values otherwise loaded from hiera. But to me that seems separate from the environment issue.\n\nBut in any case, with a puppetmaster per environment you do not need to support multiple concurrent environment data in hiera.\nYou simply have multiple hiera sub-directories, one for each environment, and 'switch on' the needed sub-directory with a soft link.\n\nDirectories", "created": "2015-02-11T04:24:00.000000"}, {"author": "557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2", "body": "[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd] Is this ticket tightly coupled with data in modules? I thought that was a totally separate issue from Puppet supporting different Hiera setups per environment.", "created": "2015-02-11T04:37:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2] - They are tightly coupled, since \"data in modules\" is essentially the same problem as \"data in environment\". The rock bottom problem in hiera is that it is a singleton implementation", "created": "2015-02-11T08:46:00.000000"}, {"author": "623e74f6562ab90069f9ebca", "body": "@David, I think I'm understanding your point... If not, tell me to \"Shut up.\" ", "created": "2015-02-11T10:00:00.000000"}, {"author": "557058:ef8a628c-d922-4071-8070-585f0ad47fad", "body": "Yes, I think you have got my point. :)\n\nSo IMO this 'feature' is a trap. We should be asking why people want this feature and addressing that in a better way.\n\nThis is a feature asking for a shared component between multiple environments. That component is (at the very least) the part that does the environment switching (as you put it, the routing logic).\nHow will you test an update to that switch/data-routing-logic when it is part of both your dev and your live infrastructure?\n\n", "created": "2015-02-16T04:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I agree that the current pattern of having an overall hierarchy that includes levels that refer to data directories inside of the current environment is an anti-pattern. (Even worse if it is looking in multiple environments). The new solution makes data in modules and environments self contained - it does not matter what is in the top level hierarchy, or even if it is used at all (well, you can always use it to override what is configured in any environment", "created": "2015-02-16T06:38:00.000000"}, {"author": "623e74f6562ab90069f9ebca", "body": "@david, I think I may now see the disconnect...\n\nThe ticket was filed requesting some way to allow a per-environment hiera.yaml which is really just to say per-environment data routing logic. That is necessary to test both code and data through a promotion/testing pipeline. The technique is not 100% foolproof as there's almost always going to be some data which is particular to 'production' which it does not make sense to include in the Hiera data as static (YAML/JSON/etc). Repo commit hashes/tags/branch names is an example where this gets complicated. Most folks whom I've spoken with have this kind of data sourced from either a CMDB, service discovery layer, or even via a dynamic Hiera backend (hiera-http) but having per-environment Hiera settings and testing the static Hiera data does *nearly* close the gap.\n\nI don't recall anyone who I've spoken with about this ticket in particular, nor about the larger issue the ticket addresses, having requested that ability to query Hiera data *across* environments unless you count queries to external data stores (see above comments re CMDB, etc) where the data is not tightly bound to *any* particular environment.\n\n[~accountid:557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd], I'm glad to hear there are changes to the data binding layer coming which might obsolete the request in this ticket. Will take a look ASAP.", "created": "2015-02-17T10:34:00.000000"}, {"author": "557058:dd7ba664-1e31-4b6c-9525-768d1f3babc2", "body": "My use case is for entirely different backends and hierarchies for different environments as opposed to building a dev->test->prod type of pipeline.", "created": "2015-02-17T11:00:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This ticket is turning out to be a good discussion about use cases and requirements. (I like that).\n\nTo recap and talk about the ideas going forward. PUP-1640 adds the mechanism with which it is possible to provide data that is environment specific, and that is specific to a module. PUP-3948 makes the {{lookup}} function the consolidated lookup mechanism (it looks up in global hiera, in data from the environment, and in a module, and it can do the types of merges and tricks that the combined functions {{hiera}}, {{hiera_array}}, and {{hiera_hash}} can do (and a little bit more). The function does this without having a direct dependency on hiera - only on the current Data Binding API, and the new Data Provider API.\n\nIn practice this means that much data that is now in a single hierarchy for all environments can migrate to be environment specific (or indeed migrate to modules if they are defaults for modules). Then the global data will be used for \"site specific data\" or \"environment overrides/amends\". This should help flowing a version of a configuration from a dev env to a test env to a production env on the same or different masters. \n\nThe new approach allows having a separate hierarchy in the environment - it does not even have to be hiera based (if/when/where that makes more sense).\n\nAfter 4.0.0 is out, I want us to refactor hiera so it functions under the Data Provider API (i.e. that it no longer is a singleton (== strictly global).\n\n", "created": "2015-02-17T15:58:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I am curious about the use case \"query across all environments\" - what is the purpose of that? As I see it that seems to imply asking for \"what is the value of parameter x::y::z for node n if it were in any of the currently known environments\" - such a query cannot be answered without evaluating the puppet logic since it may lookup with different strategies (not all parameters get their value with priority lookup).\n\nIf we take the node out of the equation - it is clearly possible to just iterate over all the known environments and lookup a key", "created": "2015-02-17T16:06:00.000000"}, {"author": "557058:e0340dee-9d48-48c3-8c6a-02597af847c9", "body": "I'm not a fan of the 'query across all envrionments' use case. I think that hiera data should match the way environments currently work.\n\nIn other words, look in my environment, then look in $basemodulepath (or the equivalent for hiera).\n\nBy default, what I would expect as a user would be for it to look in the environment, then go up to the default puppet/hiera.yaml for direction.", "created": "2015-05-07T11:41:00.000000"}, {"author": "623c0b46d32a94006a649536", "body": "I would be against \"query over environments\" as well. I think it's unclear and unsafe.\n\nFor our particular use case, we've extracted most of the hiera files out to %{environment}/xxx/yyy type entries, so we are now doing most things \"per environment\". Defaults for all environments are just xxx/yyy and are overridden, but it's not ideal.\n\nOne particular issue, which I think which is unsolved, is the inability to have the hiera.yaml be specific to an environment, thereby using and validating it. (or, for example, changing defaults for all environment) Globally sharing the hiera.yaml file, even with per-environment locations, is not ideal.\n", "created": "2015-06-01T23:18:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "The intended implementation of \"data in modules\" will allow different hierarchies in different modules and different environments, as well as at the global-across-all-environments level. The intended implementation has an explicit hierarchy of global wins over environment, and environment wins over module. See PUP-4474.\n\nI don't see a good reason to implement a \"cross environment data query\".", "created": "2015-06-02T05:59:00.000000"}, {"author": "557058:db38ef03-d979-4578-97e1-de447e0a7ebb", "body": "Hi, it seems to me that there might be two different requests/issues here.\n\n1) different hiera.yaml for each environment\n2) one hiera, looking for data in different environments(?)\n\nIn my company we use environments as 'puppet+hiera' versions. For example 1_2_3, 1_3_1.\nOnce a version/environment has been released it is never changed anymore. In our ENC", "created": "2015-07-31T04:35:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "[~accountid:557058:db38ef03-d979-4578-97e1-de447e0a7ebb] there is now a environment level hiera with a per environment hiera.yaml with their own settings and so forth.\n\nThis is unfortunately not older hiera but rather the new lookup system so you more or less only have 2 backends to choose from today, but that appears to be the way forward and whatever backends people like needs porting.", "created": "2016-07-06T04:35:00.000000"}], "components": ["UX"], "created": "2013-11-06T12:38:00.000000", "creator": "623a47cebef8a60068c6c8e2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5d2f25f7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CS Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrwgf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_8677851099_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_75335852079"}], "description": "Currently hiera supports one `hiera.yaml` file hardcoded to be in the same location as `puppet.conf` (which is the `config` puppet directive.\n\nHaving separate `hiera.yaml`'s per puppet environment would go along with having separate `site.pp`'s, modules, etc. per environment.\n\nUPDATE\n---\nThis feature is released in Puppet 4.4 / PE 2016.1 - See the full documentation here: https://docs.puppet.com/puppet/latest/reference/lookup_quick.html\n\n[~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd] has a blog series about it too: https://www.devco.net/archives/2016/03/13/the-puppet-4-lookup-function.php\n\nPlease see PUP-4474 for the work on \"data in modules\" which also covers \"data in environments\". TL;DR - yes it will be possible to have hiera data per environment, as well as hiera data in a module, and all of that in combination with the existing global hiera.\n\nUse this ticket to comment on use-cases if you like, as the PUP-4474 and related tickets are about the implementation and thus are far more detailed/technical.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53583", "fixedVersions": [], "id": "53583", "issueType": "New Feature", "key": "HI-46", "labels": ["customer", "redmine"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a47cebef8a60068c6c8e2", "resolution": "Fixed", "resolutionDate": "2016-07-05T22:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera should support alternate environments", "timeSpent": "PT0S", "updated": "2016-07-06T04:35:00.000000", "votes": "63", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "hiera 1.3.0-rc2 packages shipped", "created": "2013-11-08T17:07:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:40:00.000000"}], "components": ["RE"], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@32e6c1f5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqgzj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_2_*:*_0_*|*_1_*:*_1_*:*_191641215_*|*_3_*:*_1_*:*_29918_*|*_5_*:*_1_*:*_17789566700_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53582", "fixedVersions": [], "id": "53582", "issueType": "Sub-task", "key": "HI-45", "labels": ["Release_Software"], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-08T17:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c08e1562ab90069f8aed4", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Nick I think we're good to go, can you please merge and push the hiera 1.3 docs?", "created": "2013-11-08T13:48:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:40:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@72b39251"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqgzb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_352600930_*|*_3_*:*_1_*:*_405849_*|*_5_*:*_1_*:*_17801070915_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54015", "fixedVersions": [], "id": "54015", "issueType": "Sub-task", "key": "HI-44", "labels": [], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-08T13:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push docs", "timeSpent": "PT0S", "updated": "2014-06-02T15:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Thumbs-ups from eric0, nick f, henrik", "created": "2013-11-08T13:50:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Wrong status", "created": "2013-11-08T13:56:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:40:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1e5c8e86"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqgz3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_349531405_*|*_3_*:*_1_*:*_3116732_*|*_5_*:*_1_*:*_17801049847_*|*_6_*:*_2_*:*_372967"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53930", "fixedVersions": [], "id": "53930", "issueType": "Sub-task", "key": "HI-43", "labels": [], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2013-11-08T13:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/No Go meeting", "timeSpent": "PT0S", "updated": "2014-06-02T15:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Kicked the tires, seems OK.", "created": "2013-11-08T12:57:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:40:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1d84f723"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqgyv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_261268383_*|*_3_*:*_1_*:*_88240987_*|*_5_*:*_1_*:*_17801124820_*|*_6_*:*_2_*:*_3415331"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53971", "fixedVersions": [], "id": "53971", "issueType": "Sub-task", "key": "HI-42", "labels": [], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-08T12:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Exploratory test packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Packages built and staged on builds.jenkins.com", "created": "2013-11-04T13:18:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:40:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@65806757"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrvmn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4497407_*|*_3_*:*_1_*:*_645432_*|*_5_*:*_1_*:*_18148914780_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53874", "fixedVersions": [], "id": "53874", "issueType": "Sub-task", "key": "HI-41", "labels": ["Release_Software"], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-04T13:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "code revert from master merged into stable, 1.3.0-rc2 tagged on stable, 1.3.0-rc2 merged into master, all pushed to github", "created": "2013-11-04T13:06:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:39:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@363791c8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrvmf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4445054_*|*_5_*:*_1_*:*_18149595982_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53814", "fixedVersions": [], "id": "53814", "issueType": "Sub-task", "key": "HI-40", "labels": ["Release_Software"], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-04T13:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag to github", "timeSpent": "PT0S", "updated": "2014-06-02T15:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "1.3.0 added to Affected Hiera Version", "created": "2013-11-07T13:38:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:39:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@604e425d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqgyn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_265565278_*|*_5_*:*_1_*:*_17888462807_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53847", "fixedVersions": [], "id": "53847", "issueType": "Sub-task", "key": "HI-39", "labels": [], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-07T13:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create a version for the next version", "timeSpent": "PT0S", "updated": "2014-06-02T15:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:39:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@73e5dbba"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrvm7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3625946_*|*_5_*:*_1_*:*_18150391824_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53688", "fixedVersions": [], "id": "53688", "issueType": "Sub-task", "key": "HI-38", "labels": [], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-04T12:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs targeted are in the \"Merged Pending Release\" status", "timeSpent": "PT0S", "updated": "2014-06-02T15:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Broken commit from 1.3.0-rc1 reverted, this change has been reflected in the ticket", "created": "2013-11-04T12:52:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:39:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@175cd838"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrvlz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3585782_*|*_5_*:*_1_*:*_18150425331_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53658", "fixedVersions": [], "id": "53658", "issueType": "Sub-task", "key": "HI-37", "labels": [], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-04T12:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs targeted at the release have a corresponding commit", "timeSpent": "PT0S", "updated": "2014-06-02T15:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "The one faulty commit from 1.3.0-rc2 has been reverted, and the ticket had been changed to reflect this. Additional sweep of tickets revealed no other changes", "created": "2013-11-04T12:51:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:35:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@55652b87"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrvlr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3546559_*|*_5_*:*_1_*:*_18150247177_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53603", "fixedVersions": [], "id": "53603", "issueType": "Sub-task", "key": "HI-36", "labels": [], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-04T12:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs referenced in the commit log have a bug targeted at the release", "timeSpent": "PT0S", "updated": "2014-06-02T15:35:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "master and stable both green on jenkins.puppetlabs.com", "created": "2013-11-04T12:50:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:39:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2cd8197a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrvlj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3484143_*|*_5_*:*_1_*:*_18150518457_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53580", "fixedVersions": [], "id": "53580", "issueType": "Sub-task", "key": "HI-35", "labels": [], "originalEstimate": "PT0S", "parent": "54014", "parentSummary": "Hiera 1.3.0-rc2 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-04T12:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure tests are passing", "timeSpent": "PT0S", "updated": "2014-06-02T15:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "-All tickets targeted at 1.3.0 in Redmine have been closed\n-PSA on IRC #puppet has been issued\n-Release email to puppet-dev and puppet-users has been sent", "created": "2013-11-08T18:23:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Release tickets do not need to be testrailed.", "created": "2015-01-30T06:47:00.000000"}], "components": [], "created": "2013-11-04T11:52:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@763baf3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqgyf:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_369071613_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54014", "fixedVersions": [], "id": "54014", "issueType": "Task", "key": "HI-34", "labels": ["Release_Software"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-11-08T18:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.0-rc2 Release", "timeSpent": "PT0S", "updated": "2015-01-30T06:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2013-11-07T10:10:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request Add windows gem dependencies has been closed.", "created": "2013-12-18T11:03:00.000000"}, {"author": "557058:d9266b08-990a-449f-97ff-f9a0910c2a58", "body": "This was merged.", "created": "2013-12-18T12:14:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:35:00.000000"}], "components": ["Community"], "created": "2013-10-31T16:05:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@601b938e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrv67:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4136923982_*|*_5_*:*_1_*:*_14350869339_*|*_6_*:*_1_*:*_0"}], "description": "h2. Add windows gem dependencies\n\n * Author: Josh Cooper <>\n * Company: \n * Github ID: [joshcooper|https://github.com/joshcooper]\n * [Pull Request 160 Discussion|https://github.com/puppetlabs/hiera/pull/160]\n * [Pull Request 160 File Diff|https://github.com/puppetlabs/hiera/pull/160/files]\n\nh2. Pull Request Description\n----\n\nHiera has dependencies on windows-specific gems that weren't expressed\nin the Gemfile. This updates the gemfile, and pins the versions to what\nwe are currently shipping.\n\n----\n(webhooks-id: 19a93c5c92819fb283bcbe2309a05cab)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53579", "fixedVersions": [], "id": "53579", "issueType": "Task", "key": "HI-33", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2013-12-18T12:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "PR (160): Add windows gem dependencies - joshcooper", "timeSpent": "PT0S", "updated": "2014-06-02T15:35:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "attachments": [], "comments": [{"author": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "body": "CI passed.", "created": "2013-10-31T17:53:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "This was reverted successfully.", "created": "2014-06-02T13:31:00.000000"}], "components": [], "created": "2013-10-30T15:44:00.000000", "creator": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4b019239"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrmnr:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/Oct/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_2880666_*|*_1_*:*_1_*:*_224668_*|*_3_*:*_1_*:*_3149353_*|*_5_*:*_1_*:*_18473878618_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_87901306"}], "description": "Due to a number of issues that came up in testing/exercising HI-27, it needs to be reverted before Hiera 1.3.0 can be released. We'll fix the problems in the future, probably for 1.4.0.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53928", "fixedVersions": ["HI 1.3.0"], "id": "53928", "issueType": "Bug", "key": "HI-32", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "resolution": "Fixed", "resolutionDate": "2013-10-31T17:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Revert HI-27", "timeSpent": "PT0S", "updated": "2014-06-02T13:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Links to redmine 18577", "created": "2013-11-08T18:27:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Eric, these tickets need some status to determine how to proceed.", "created": "2014-06-02T13:33:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "This is predicated on enabling the hash-style lookups, which I don't think is the right approach based on the problems in [HI-30], so I'm closing as wontfix.", "created": "2014-06-02T15:11:00.000000"}], "components": [], "created": "2013-10-30T15:03:00.000000", "creator": "623c08e1562ab90069f8aed4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1bd379be"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrto7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2623427_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_18573883932"}], "description": "The new feature for mapping namespace::key lookups onto YAML hashes is enabled with a setting called {{:hash_delimiter}}, which can be set to anything. \n\nIn the context of Puppet, the only useful value for this setting is {{::}}. Additionally, the name of the setting doesn't describe its actual use in the context of Puppet. \n\nI'm of the belief that this is premature generalization. Theoretically people could use hiera for a lot of things; practically, it's a Puppet subsystem, just like Facter. Shouldn't our goal for its interface be to make it work less confusingly with Puppet, not to design for imaginary use cases that probably won't materialize? \n\nIn that spirit, I recommend we change it to a boolean setting with a different name. I suggest {{:namespace_hashes}} or {{:hash_element_lookups}} or something.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53578", "fixedVersions": [], "id": "53578", "issueType": "Bug", "key": "HI-31", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c08e1562ab90069f8aed4", "resolution": "Won't Fix", "resolutionDate": "2014-06-02T15:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Setting to enable new YAML shorthand is too general", "timeSpent": "PT0S", "updated": "2014-06-02T15:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Original redmine issue", "created": "2013-11-08T18:28:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Since HI-27 failed review and was reverted, this issue (HI-30) is no longer relevant. The HI-27 needs to go back and come up with a new design that does not require fixing the issue that is described in this issue. It is no \"ready for engineering\" in any case.", "created": "2014-01-17T16:50:00.000000"}, {"author": "557058:f0a0aeb9-62cc-47a1-92da-d8bc31b4736a", "body": "While the original issue may or may not be fixed/prevented with a different design, the raised question remains valid. Should that one be extracted into a separate issue or copied to HI-27?", "created": "2014-01-22T01:14:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Until HI-27 is resolved with a decision (either just close it, or someone spends time coming up with a design that does not create ambiguity problems), this issue (HI-30) can remain open. No need to create more issues - if there is work on HI-27, they can read up on the problem that needs to be avoided here in HI-30 (this was the reason I did not simply close HI-30). Likewise, if HI-27 is closed with a won't fix, then HI-30 can be closed as well.\n", "created": "2014-01-22T05:27:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Eric, these tickets need some status to determine how to proceed.", "created": "2014-06-02T13:33:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "This looks like a feature that works very well for a very narrow use-case and falls apart outside of that. The deal-breaker for me is the ambiguity between retrieving a hash key and a parameter. Closing as wontfix.", "created": "2014-06-02T15:13:00.000000"}], "components": [], "created": "2013-10-30T14:07:00.000000", "creator": "623c08e1562ab90069f8aed4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5fdfe9c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrtnz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5703878_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_11740618052_*|*_10006_*:*_2_*:*_6833642219"}], "description": "The new shorthand YAML data format (added by redmine #18577) is currently implemented as all-or-nothing. If you enable it (set {{:yaml: :hash_delimiter: \"::\"}} in hiera.yaml), ALL lookups formatted as {{class::parameter}} will be interpreted as hash elements, and any keys stored in the data sources using full parameter names will become inaccessible; trying to look them up will return nil. \n\n{code}\n# My yaml data source\n---\napache::version: \"2.2.21\"\n# With setting enabled\nnick@wren:~$ hiera apache::version\nnil\n# With setting commented out\nnick@wren:~$ hiera apache::version\n2.2.21\n{code}\n\nThis means that if you want to experiment with the new style anywhere, you must first entirely rewrite every single data file in your environment. In conversation with Adrien Thebo, he stated that this should be a blocker; I agree.\n\nIt also raised the question of what the desired behavior is when a value is stored in both formats. That is, given:\n\n{code}\n---\napache:\n  version: 2.2.23\napache::version: 2.2.21\n{code}\n\n...which should win? We came to the conclusion that the traditional full parameter name maps can be reasonably called _explicit,_ and the new DRY hash mapping can be reasonably called _implicit,_ which means the full name should *always* win if it's present. \n\nThis sidebar only refers to collisions within a single file; otherwise, normal hierarchy rules should obtain. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53813", "fixedVersions": [], "id": "53813", "issueType": "Bug", "key": "HI-30", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623c08e1562ab90069f8aed4", "resolution": "Won't Fix", "resolutionDate": "2014-06-02T15:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "New YAML shorthand for class params blocks existing form of class param lookup when enabled", "timeSpent": "PT0S", "updated": "2014-06-02T15:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "puppetcla commented:\n\nCLA signed by all contributors.\n", "created": "2013-11-07T10:10:00.000000"}, {"author": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "body": "Pull request (#22142) Substantial speed increase in lookups has been closed.", "created": "2013-12-10T12:33:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "Merged into master in https://github.com/puppetlabs/hiera/commit/7657d43a35c32570862041713c17bc0e2039326f", "created": "2013-12-10T12:34:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Verified in hiera-7657d43a35c32570862041713c17bc0e2039326f. Added 1,000 YAML files to /var/lib/hiera and wall-clock times for a search were less than 2 seconds.", "created": "2013-12-11T12:31:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:35:00.000000"}], "components": ["Community"], "created": "2013-10-29T10:35:00.000000", "creator": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4857fc5e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys48n:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_18703264_*|*_1_*:*_1_*:*_3123587463_*|*_3_*:*_1_*:*_769037_*|*_10009_*:*_1_*:*_67463437_*|*_5_*:*_1_*:*_14954642082_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_515206961"}], "description": "h2. (#22142) Substantial speed increase in lookups\n\n * Author: Eric Sorenson <ahpook@gmail.com>\n * Company: Puppet Labs\n * Github ID: [ahpook|https://github.com/ahpook]\n * [Pull Request 159 Discussion|https://github.com/puppetlabs/hiera/pull/159]\n * [Pull Request 159 File Diff|https://github.com/puppetlabs/hiera/pull/159/files]\n\nh2. Pull Request Description\n----\n\nPreviously, hiera would look up the 'datadir' from config\ninside the loop where it looks inside datafiles. This caused\nsubstantial slowdowns on sites with deep hierarchies.\n\nThis commit moves the datadir lookup to be outside the\nthe datasource-search loop and caused substantial speedups.\n(Timings are in the original ticket).\n\nThis patch was written by Sean Millichamp; I just rebased it\nonto the current state of Hiera and submitted it on his behalf.\n\n----\n(webhooks-id: b3293a839fd96027e8717e615451d911)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53872", "fixedVersions": ["HI 1.3.1 RC"], "id": "53872", "issueType": "Task", "key": "HI-29", "labels": ["github"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "70121:9c566999-54f8-4f08-b11a-844056085d2e", "resolution": "Fixed", "resolutionDate": "2013-12-11T12:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Pull Request (159): (#22142) Substantial speed increase in lookups", "timeSpent": "PT0S", "updated": "2014-11-07T08:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I don't think this is needed anymore. Reopen if I am mistaken in that assumption.", "created": "2016-02-17T12:00:00.000000"}], "components": [], "created": "2013-10-21T14:05:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@263066fe"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrr1b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_73349698153_*|*_6_*:*_1_*:*_0"}], "description": "Hiera install.rb should create the datadir (%{_sharedstatedir}/hiera)\n\nie.\n--datadir=%{_sharedstatedir}/hiera (default = /var/lib)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53719", "fixedVersions": [], "id": "53719", "issueType": "Improvement", "key": "HI-28", "labels": ["Packaging_Bugs"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2016-02-17T12:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "install.rb should create the datadir", "timeSpent": "PT0S", "updated": "2016-02-17T12:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This feature worries me a bit as it blocks other useful features in hiera data (e.g. moving decisions about data composition into hiera vs. lookup side). This because it turns all objects into name-spaces and thus pretty much squats on the entire available name space.\n\nI also don't understand how this is more \"correct yaml\" - in fact, I could argue the reverse.\n", "created": "2013-10-28T10:36:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "Another way of looking at this is that it is the beginnings of a query syntax where {{::}} is the child operator.", "created": "2013-10-28T10:40:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "so, did I miss something? Are subkeys required to start with '::', or the root end with '::' for this to work?\n\nCan I do\n\nfoo: { bar: 10 }\n\nto get foo::bar: 10 ??", "created": "2013-10-28T10:52:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "I think 'proper yaml' means more 'natural' looking yaml.\n\nHaving a lot of class parameters but listing them all out as fully qualified variable names is pretty ugly and repetitive, and it does seem cleaner to tuck them into a hash. \n\nI don't fully understand the last question.", "created": "2013-10-28T13:58:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "My YAML is weak. I created /var/lib/hiera/defaults.yaml thus:\n\n{code}\n---\nkeyone: valone\nkeytwo: valtwo\nkeythree: valthree\nkeyfour:\n    - one\n    - two\n    - three\n    - four\n{code}\n\nPredictably, hiera behaves like I would expect:\n\n{code}\n# hiera keytwo\nvaltwo\n# hiera keyfour\n[\"one\", \"two\", \"three\", \"four\"]\n{code}\n\nBut I don't know how to structure a YAML file to verify this bug. Help?", "created": "2013-10-28T15:12:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "[~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a] this really only makes sense if, in your example above, you have a class to go with the data structure that looks like:\n\n{code}\n## defaults.yaml\nmyclass:\n  first_param: first_value\n  second_param: second_value\n\n## init.pp\ninclude myclass\n\nclass myclass ($first_param = \"first_default\", $second_param = \"second_value\") {\n  notice { \"first_notify\": message => \"got ${myclass::first_param}\" }\n  notice { \"second_notify\": message => \"got ${myclass::second_param}\" }\n}\n{code}\n\nyou should get first_value and second_value emitted from puppet apply.", "created": "2013-10-28T22:01:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "I would like an escape mechanism", "created": "2013-10-28T23:50:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "Verified (I think) in puppet-3.3.1.636:\n\n{code}\n## defaults.yaml \nmyclass:\n    first_param: first_value\n    second_param: second_value\n{code}\n\n{code}\n## init.pp\nclass myclass ($first_param = \"first_default\", $second_param = \"second_value\") {\n    notify { \"first_notify\": message => \"got ${myclass::first_param}\" }\n    notify { \"second_notify\": message => \"got ${myclass::second_param}\" }\n}\n{code}\n\n{code}\n# puppet apply init.pp\nNotice: Compiled catalog for centos6-master.localdomain in environment production in 0.02 seconds\nNotice: got first_default\nNotice: /Stage[main]/Myclass/Notify[first_notify]/message: defined 'message' as 'got first_default'\nNotice: got second_value\nNotice: /Stage[main]/Myclass/Notify[second_notify]/message: defined 'message' as 'got second_value'\nNotice: Finished catalog run in 0.03 seconds\n{code}", "created": "2013-10-29T12:13:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Some decisions need to be made on how to proceed with this ticket, and HI-30 and HI-31.", "created": "2014-06-02T15:05:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "This looks like a feature that works very well for a very narrow use-case and falls apart outside of that. The deal-breaker for me is the ambiguity between retrieving a hash key and a parameter. Closing as wontfix.", "created": "2014-06-02T15:13:00.000000"}], "components": ["Community"], "created": "2013-10-21T12:59:00.000000", "creator": "623a4c3b4a57610068e6782b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4b119c33"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytmnz:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Oct/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_355136115_*|*_null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_49519_*|*_10009_*:*_1_*:*_333286055_*|*_5_*:*_1_*:*_6864426654_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_509554"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53601", "fixedVersions": ["HI 1.3.0"], "id": "53601", "issueType": "New Feature", "key": "HI-27", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4c3b4a57610068e6782b", "resolution": "Won't Fix", "resolutionDate": "2014-06-02T15:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Extend Hiera to support Proper Yaml Syntax", "timeSpent": "PT0S", "updated": "2014-06-02T15:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [], "components": [], "created": "2013-10-21T12:06:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c57de1e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqyv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1212695689_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53600", "fixedVersions": [], "id": "53600", "issueType": "Sub-task", "key": "HI-26", "labels": ["Release_Software"], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2013-11-04T11:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push packages", "timeSpent": "PT0S", "updated": "2013-11-04T11:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [], "components": [], "created": "2013-10-21T12:06:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@130b9b96"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqyn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1212691143_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53577", "fixedVersions": [], "id": "53577", "issueType": "Sub-task", "key": "HI-25", "labels": [], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2013-11-04T11:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push docs", "timeSpent": "PT0S", "updated": "2013-11-04T11:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [], "components": [], "created": "2013-10-21T12:06:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@237b1abf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqyf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1212684923_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "54012", "fixedVersions": [], "id": "54012", "issueType": "Sub-task", "key": "HI-24", "labels": [], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2013-11-04T11:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Go/No Go meeting", "timeSpent": "PT0S", "updated": "2013-11-04T11:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [], "components": [], "created": "2013-10-21T12:06:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@14f9a86e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqy7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1212683799_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53924", "fixedVersions": [], "id": "53924", "issueType": "Sub-task", "key": "HI-23", "labels": [], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2013-11-04T11:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Exploratory test packages", "timeSpent": "PT0S", "updated": "2013-11-04T11:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Packages built and stages at builds.puppetlabs.lan", "created": "2013-10-29T17:41:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:27:00.000000"}], "components": [], "created": "2013-10-21T12:05:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@53aa4fb7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqxz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_701323233_*|*_3_*:*_1_*:*_9985014_*|*_5_*:*_1_*:*_18654404512_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53871", "fixedVersions": [], "id": "53871", "issueType": "Sub-task", "key": "HI-22", "labels": ["Release_Software"], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-10-29T17:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create packages", "timeSpent": "PT0S", "updated": "2014-06-02T15:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "1.3.0-rc1 tagged and pushed", "created": "2013-10-29T14:52:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:27:00.000000"}], "components": [], "created": "2013-10-21T12:05:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@59b35493"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqxr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_701180236_*|*_5_*:*_1_*:*_18664526996_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53811", "fixedVersions": [], "id": "53811", "issueType": "Sub-task", "key": "HI-21", "labels": ["Release_Software"], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-10-29T14:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Push tag to github", "timeSpent": "PT0S", "updated": "2014-06-02T15:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [], "components": [], "created": "2013-10-21T12:05:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@75d2907"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqxj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1212684888_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53845", "fixedVersions": [], "id": "53845", "issueType": "Sub-task", "key": "HI-20", "labels": [], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2013-11-04T11:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Create a version for the next version", "timeSpent": "PT0S", "updated": "2013-11-04T11:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:27:00.000000"}], "components": [], "created": "2013-10-21T12:05:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1b3a5a3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqxb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_711387119_*|*_5_*:*_1_*:*_18654346339_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53684", "fixedVersions": [], "id": "53684", "issueType": "Sub-task", "key": "HI-19", "labels": [], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-10-29T17:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs targeted are in the \"Merged Pending Release\" status", "timeSpent": "PT0S", "updated": "2014-06-02T15:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:27:00.000000"}], "components": [], "created": "2013-10-21T12:05:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3bd606b2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqx3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_711373838_*|*_5_*:*_1_*:*_18654354764_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53717", "fixedVersions": [], "id": "53717", "issueType": "Sub-task", "key": "HI-18", "labels": [], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-10-29T17:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs targeted at the release have a corresponding commit", "timeSpent": "PT0S", "updated": "2014-06-02T15:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:27:00.000000"}], "components": [], "created": "2013-10-21T12:05:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@747fbfbc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqwv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_346214034_*|*_5_*:*_1_*:*_19019516182_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53599", "fixedVersions": [], "id": "53599", "issueType": "Sub-task", "key": "HI-17", "labels": [], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-10-25T12:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure all bugs referenced in the commit log have a bug targeted at the release", "timeSpent": "PT0S", "updated": "2014-06-02T15:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Tests are passing.", "created": "2013-10-23T17:30:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:26:00.000000"}], "components": [], "created": "2013-10-21T12:04:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1e32e5a7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrqwn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Oct/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_192330652_*|*_5_*:*_1_*:*_19173373764_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53576", "fixedVersions": [], "id": "53576", "issueType": "Sub-task", "key": "HI-16", "labels": [], "originalEstimate": "PT0S", "parent": "53922", "parentSummary": "Hiera 1.3.0-rc1 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2013-10-23T17:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Ensure tests are passing", "timeSpent": "PT0S", "updated": "2014-06-02T15:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Let me know when you want me to create the heira 1.3.0-rc2 tag/packages", "created": "2013-11-04T11:28:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "(y)", "created": "2013-11-04T11:44:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Hiera 1.3.0-rc1 has bad code in it, so rather than move forward with it, we're moving on to hiera 1.3.0-rc2", "created": "2013-11-04T11:56:00.000000"}], "components": [], "created": "2013-10-21T12:04:00.000000", "creator": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e8b1191"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqh67:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_496040_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1212216726"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53922", "fixedVersions": [], "id": "53922", "issueType": "Task", "key": "HI-15", "labels": ["Release_Software"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2013-11-04T11:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera 1.3.0-rc1 Release", "timeSpent": "PT0S", "updated": "2013-11-04T11:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:704c6754-8b2e-4d6f-9e4c-c167ab461b2d", "body": "Perhaps [this|https://github.com/gnustavo/hiera/commit/e4921633eee61c82381b4bfb51e149dd40c3fb83] could do the trick?\n\nI know very little Ruby and I haven't implemented checks, so I'm not going to submit a pull request.", "created": "2014-02-03T10:04:00.000000"}, {"author": "557058:091495e8-9cec-4527-9fa6-d220c3a9fcb8", "body": "It's important (probably most important) that this include the hierarchy in hiera.yaml itself, as well as the data files.", "created": "2014-12-16T17:37:00.000000"}, {"author": "557058:87e60a31-ae67-4797-87c3-1873095e2bb9", "body": "I agree with zachary's comment at the moment, i have a wrapper function around hiera to grab the classes array and set an ephemeral scope variable for each class so that i can contain data within each module and find module specific data for other modules. This woudln't be necessary if really the hiera.yaml actually supported other data structures other than strings, especially with facter 2 now supporting data structures, it means you could combine roles on machines as oppose having to create new types of roles that result in combining the classes of two other roles, if people use that stucture. ", "created": "2014-12-17T03:24:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "The solution provided by [~accountid:557058:704c6754-8b2e-4d6f-9e4c-c167ab461b2d] looks good to me although I'm not sure if a missing sub-key should yield an exception. Would seem more consistent if lookup just returned nil.", "created": "2015-01-23T06:39:00.000000"}, {"author": "557058:87e60a31-ae67-4797-87c3-1873095e2bb9", "body": "The solution provided by Gustavo really is only isolated to lookups as oppose supported by the hiera.yaml structure i.e. mixing data structures within it\n\n:hierarchy:\n - \"somedir/%{::some_fact_array}\"\n\nthough i can imagine the above would become complex if people had fact data as hashes and such and it was attempting to traverse those, but, arrays would make sense for an additoinal support. ", "created": "2015-01-23T06:50:00.000000"}, {"author": "557058:54921db7-0271-4f8f-be78-bf68cccb06d2", "body": "[~accountid:557058:87e60a31-ae67-4797-87c3-1873095e2bb9], what you're describing is HI-294 so you should track that issue.", "created": "2015-01-24T01:03:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Added PR-34 - pre-docs describing qualified key lookups", "created": "2015-01-28T04:28:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Merged to master at 54f0150", "created": "2015-01-28T08:54:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "verified on rhel7 at SHA: 98e6271 with:\n{code}\n[root@yrstrmt5crsbeit hieradata]# cat global.yaml\nerict: 'wuz here'\nhash:\n    test: \"value\"\narray:\n    - \"idxZero\"\n    - \"idxOne\"\nqual: \"%{hiera('hash.test')}\"\n[root@yrstrmt5crsbeit hieradata]# hiera qual\nvalue\n[root@yrstrmt5crsbeit hieradata]# hiera array.2\nnil\n[root@yrstrmt5crsbeit hieradata]# hiera hash.test\nvalue\n[root@yrstrmt5crsbeit hieradata]# hiera hash.key\nnil\n[root@yrstrmt5crsbeit hieradata]# hiera array.test\n/usr/local/share/ruby/site_ruby/hiera/backend.rb:280:in `block in qualified_lookup': Hiera type mismatch: Got Array when a non Array object that responds to '[]' was expected to enable lookup using key 'test' (Exception)\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:274:in `each'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:274:in `qualified_lookup'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:241:in `block in lookup'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:236:in `each'\n\tfrom /usr/local/share/ruby/site_ruby/hiera/backend.rb:236:in `lookup'\n\tfrom /usr/local/share/ruby/site_ruby/hiera.rb:60:in `lookup'\n\tfrom /usr/bin/hiera:250:in `<main>'\n[root@yrstrmt5crsbeit hieradata]# hiera array.0\nidxZero\n{code}", "created": "2015-02-03T17:05:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "verified on ubuntu14.04 at SHA: 98e6271 with:\n{code}\nroot@bowjz0xn14is66c:~# hiera array.0\nidxZero\nroot@bowjz0xn14is66c:~# hiera array.should_error\n/usr/local/lib/site_ruby/1.9.1/hiera/backend.rb:280:in `block in qualified_lookup': Hiera type mismatch: Got Array when a non Array object that responds to '[]' was expected to enable lookup using key 'should_error' (Exception)\n\tfrom /usr/local/lib/site_ruby/1.9.1/hiera/backend.rb:274:in `each'\n\tfrom /usr/local/lib/site_ruby/1.9.1/hiera/backend.rb:274:in `qualified_lookup'\n\tfrom /usr/local/lib/site_ruby/1.9.1/hiera/backend.rb:241:in `block in lookup'\n\tfrom /usr/local/lib/site_ruby/1.9.1/hiera/backend.rb:236:in `each'\n\tfrom /usr/local/lib/site_ruby/1.9.1/hiera/backend.rb:236:in `lookup'\n\tfrom /usr/local/lib/site_ruby/1.9.1/hiera.rb:60:in `lookup'\n\tfrom /usr/bin/hiera:250:in `<main>'\nroot@bowjz0xn14is66c:~# hiera hash.should_be_nil\nnil\nroot@bowjz0xn14is66c:~# hiera hash.test\nvalue\nroot@bowjz0xn14is66c:~# hiera array.2\nnil\nroot@bowjz0xn14is66c:~# hiera qual\nvalue\nroot@bowjz0xn14is66c:~# cat /etc/puppetlabs/agent/code/hieradata/global.yaml\nerict: 'wuz here'\nhash:\n    test: \"value\"\narray:\n    - \"idxZero\"\n    - \"idxOne\"\nqual: \"%{hiera('hash.test')}\"\n{code}", "created": "2015-02-03T17:17:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "verified on windows2012r2-r64 at SHA: 98e6271 with:\n{code}\nAdministrator@la3jpmrisiogg4s ~\n$ cat /cygdrive/c/ProgramData/PuppetLabs/hiera/var/global.yaml\nerict: 'wuz here'\nhash:\n    test: \"value\"\narray:\n    - \"idxZero\"\n    - \"idxOne\"\nqual: \"%{hiera('hash.test')}\"\n\nAdministrator@la3jpmrisiogg4s ~\n$ cmd /c hiera qual\nvalue\n\nAdministrator@la3jpmrisiogg4s ~\n$ cmd /c hiera array.2\nnil\n\nAdministrator@la3jpmrisiogg4s ~\n$ cmd /c hiera array.0\nidxZero\n\nAdministrator@la3jpmrisiogg4s ~\n$ cmd /c hiera hash.test\nvalue\n\nAdministrator@la3jpmrisiogg4s ~\n$ cmd /c hiera hash.should_be_nil\nnil\n\nAdministrator@la3jpmrisiogg4s ~\n$ cmd /c hiera array.should_error\nC:/cygwin64/lib/ruby/site_ruby/1.9.1/hiera/backend.rb:280:in `block in qualified_lookup': Hiera type mismatch: Got Array when a non Array object that responds to '[]' was expected to enable lookup using key 'should_error' (Exception)\n\tfrom C:/cygwin64/lib/ruby/site_ruby/1.9.1/hiera/backend.rb:274:in `each'\n\tfrom C:/cygwin64/lib/ruby/site_ruby/1.9.1/hiera/backend.rb:274:in `qualified_lookup'\n\tfrom C:/cygwin64/lib/ruby/site_ruby/1.9.1/hiera/backend.rb:241:in `block in lookup'\n\tfrom C:/cygwin64/lib/ruby/site_ruby/1.9.1/hiera/backend.rb:236:in `each'\n\tfrom C:/cygwin64/lib/ruby/site_ruby/1.9.1/hiera/backend.rb:236:in `lookup'\n\tfrom C:/cygwin64/lib/ruby/site_ruby/1.9.1/hiera.rb:60:in `lookup'\n\tfrom C:/cygwin64/bin/hiera:250:in `<main>'\n\n{code}", "created": "2015-02-03T17:31:00.000000"}, {"author": "557058:6f309aba-4d46-4049-9214-f7bc783fec7f", "body": "Just upgraded to hiera 2.0.0, which has this in it. I actually have a key in hiera with a dot in it:\n\n{{services::elasticsearch-0.90.11::maintainer: Jan}}\n\nhiera can no longer look it up, since it now thinks the dot is trying to dereference a hash named {{services::elasticsearch-0}}.\n\nIs there a way around it? Maybe make it fallback to actually look up the key with dot, if a hash it not found at the location?", "created": "2015-03-26T04:07:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Suggest that you instead use a key that is safe (no unsupported punctuation), and make the value a hash, it is only the keys that are looked up that have this constraint, not hashes in general.\n\ni.e. something like this (untested):\n{code}\nmaintainers: { \n   'services::elasticsearch-0.90.11': 'Jan', \n   'somethingelse': 'SomeoneElse'\n  }\n{code}", "created": "2015-03-26T09:19:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "This: https://github.com/puppetlabs/pre-docs/pull/34/files (a single documentation file) and this https://github.com/puppetlabs/hiera/pull/231/files (the README.md) describes the features. It would be good to update this ticket's description as well so that the description is more easily found.\n", "created": "2015-03-31T19:26:00.000000"}, {"author": "70121:31a0ea64-b50a-43fe-bdc6-334342dc6680", "body": "Can't you guys just implement a key escaping functionality?\n\ne.g. \n{code}services::elasticsearch-0.90.11::maintainer: Jan{code} invalid, but {code}services::elasticsearch-0\\.90\\.11::maintainer: Jan{code} valid - and searching by the {code}services::elasticsearch-0.90.11::maintainer{code} key will return the value {code}Jan{code}\n\nAny drawbacks to this? Would it be too hard to implement?", "created": "2015-04-07T03:59:00.000000"}, {"author": "557058:54921db7-0271-4f8f-be78-bf68cccb06d2", "body": "Seems too much of an edge case to implement in Hiera. If you want to keep the same data structure, I'd recommend replacing dots with underscores using [regsubst|https://docs.puppetlabs.com/references/latest/function.html#regsubst], so your key name becomes:\n\n{{services::elasticsearch-0_90_11::maintainer}}", "created": "2015-04-07T04:20:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "I suggested adding a '\\' as an escape too but the counter argument was that '\\' hasn't been illegal in the past either.", "created": "2015-04-07T04:24:00.000000"}, {"author": "70121:31a0ea64-b50a-43fe-bdc6-334342dc6680", "body": "... so you just escape `\\` by doing `\\ \\`?\n\n(no space in between the backslashes - added it just so it would not disappear due to Jira's escaping)", "created": "2015-04-07T06:16:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Of course, but the issue is breakage of existing installations. The special interpretation of '.' introduces such a breakage. If we introduce a special interpretation of '\\' as well, then the number of breakages is likely to increase. But then again, introducing '\\' also adds a way to get around both breakages which IMO would be the preferred approach.", "created": "2015-04-07T06:23:00.000000"}, {"author": "70121:31a0ea64-b50a-43fe-bdc6-334342dc6680", "body": "Yeah... I mean... if you guys anyways broke it for some of us (by special interpretation of '.'), then maybe it might be a good idea to make it right and (even with breaking for '\\') escape it so that both worlds can live. \n\nMight be the case that '\\' is less used in hiera keys and therefore such a breakage might have a lower impact (but an impact, nonetheless), but it somehow seems fair to have a way to escape those special characters such that you have more flexibility in naming keys (and to therefore avoid more hack-ish ways). Or maybe introduce an optional flag like --ignore-dot-structuring (or whatever) (?) - which to me does not seem like a good idea.\n\nBut again, one could argue that \"just replace the . with _\", which would work, but who knows... you guys decide (anyways).", "created": "2015-04-07T06:57:00.000000"}], "components": ["DOCS"], "created": "2013-10-10T11:55:00.000000", "creator": "623a4c3b4a57610068e6782b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2f857984"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-541"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e796e8d8b9c0068b9f467"}, {"fieldName": "QA Status", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Reviewed"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyr4xj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Language"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_184822366_*|*_1_*:*_1_*:*_1049473452_*|*_10007_*:*_1_*:*_86432841_*|*_3_*:*_1_*:*_353614426_*|*_10009_*:*_1_*:*_73726767_*|*_5_*:*_2_*:*_4247402131_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_364626363_*|*_10006_*:*_1_*:*_39543197857"}], "description": "Ever since puppet has supported data structures, hiera has not been able to access those structures. With work in PP-542, facts themselves, which are the most commonly used values in hiera, are becoming data structures, and so this issue is becoming a large problem.\n\nThere are several ways we can approach this:\n\n  1. Implement another \"function\" to access facts: {noformat} myvar: %{fact(osfamily)} {noformat}\n  2. Implement parsing of structure access: {noformat} myvar: %{facts[osfamily]} {noformat}\n  3. Implement structure traversal (a more obviously limited form of structure access): {noformat} myvar: %{facts.osfamily} {noformat}\n\nI propose that in order to keep hiera simple the most correct form might be option 3. Part of this work is to decide on which one is best for hiera and then implement it.\n\n**Pre-docs:** Added in https://github.com/puppetlabs/pre-docs/pull/34. ", "epicLinkSummary": "Better support for elastic cloud environments", "estimate": "PT0S", "externalId": "53693", "fixedVersions": ["HI 2.0.0"], "id": "53693", "issueType": "Improvement", "key": "HI-14", "labels": [], "originalEstimate": "PT0S", "parent": "22949", "parentSummary": "Better support for elastic cloud environments", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "623a4c3b4a57610068e6782b", "resolution": "Fixed", "resolutionDate": "2015-02-04T14:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Allow access to structured data", "timeSpent": "PT0S", "updated": "2015-09-23T11:05:00.000000", "votes": "7", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "623a4c3b4a57610068e6782b", "body": "If I'm understanding this correctly you are seeing the problem that in PE 3 (hiera 1.2.1 on ruby 1.9.3) you get an error when a hiera data file contains, for example:\n{noformat}\n    ---\n    myval: %{foo}\n{noformat}\nThe solution is to write the yaml as:\n{noformat}\n    ---\n    myval: \"%{foo}\"\n{noformat}\nIf I am understanding that correctly, that is the problem. The error isn't coming from anything that hiera enforces, it comes from the YAML parser that is present in ruby 1.9.3, which has become more strict about valid YAML. There is unfortunately nothing that hiera can do to resolve this situation short of implementing its own YAML parser.", "created": "2013-10-04T10:55:00.000000"}, {"author": "557058:091495e8-9cec-4527-9fa6-d220c3a9fcb8", "body": "Right, except that currently, you can write it as:\n{noformat}\n--\nmyval: '%{foo}'\n{noformat}\n\nOR\n{noformat}\n--\nmyval: \"%{foo}\"\n{noformat}\n\nBoth work. \n\nI'm suggesting that Hiera enforce, arbitrarily, that you double quote the variable, and fail with single quotes, in order to maintain consistency with Puppet and reduce confusion amongst our users.\n\nI am not suggesting that Hiera should \"fix\" this problem. I'm just suggesting that we enforce double quotes as the only correct way to work around it.", "created": "2013-10-04T11:06:00.000000"}, {"author": "623a4c3b4a57610068e6782b", "body": "That isn't something that hiera can enforce without writing its own, non-compliant YAML parser. Both are valid YAML strings and so the YAML parser will handle both equally. By the time hiera sees what the data is, it shows up as simply a ruby string without any quotes contained in it and so cannot distinguish among the various ways that the string showed up in the file.", "created": "2013-10-04T11:19:00.000000"}, {"author": "557058:091495e8-9cec-4527-9fa6-d220c3a9fcb8", "body": "Yeah, I figured that was the case. I was just hoping it wasn't.\n\nI guess it would be more trouble than it's worth to implement some intermediary step to validate this before passing the file to the YAML parser.\n\nIt looks like at least with the docs, we only mention the double-quote method in examples, so there's that.\n\nFeel free to close this out.", "created": "2013-10-04T11:27:00.000000"}], "components": [], "created": "2013-10-02T14:23:00.000000", "creator": "557058:091495e8-9cec-4527-9fa6-d220c3a9fcb8", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6173af1d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrn5r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Oct/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_160302661_*|*_3_*:*_1_*:*_69275_*|*_6_*:*_1_*:*_0"}], "description": "Hiera should enforce, arbitrarily, double quoting for variable interpolation.\n\nAs of PE 3, variables in Hiera, e.g.\n\n{noformat}\n%{foo}\n{noformat}\n\nneed to be quoted.\n\nFor the sake of reducing confusion, we should enforce, arbitrarily, that variables must be double-quoted. \n\nHaving somebody single quote variables in Hiera, and then have that not work in Puppet (for obvious and good reasons), will definitely confuse some people.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53575", "fixedVersions": [], "id": "53575", "issueType": "New Feature", "key": "HI-13", "labels": ["support"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:091495e8-9cec-4527-9fa6-d220c3a9fcb8", "resolution": "Won't Fix", "resolutionDate": "2013-10-04T10:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera should enforce double quoting for variable interpolation", "timeSpent": "PT0S", "updated": "2013-10-04T11:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "body": "Merged into master in 0289b4f", "created": "2013-10-29T11:10:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:26:00.000000"}], "components": ["Community"], "created": "2013-10-01T14:49:00.000000", "creator": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@56262cbc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrmp3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2406472095_*|*_5_*:*_1_*:*_18677367839_*|*_6_*:*_1_*:*_0"}], "description": "required key/values to be in this format; nginx::gzip: on\n\nThat's great for one off variables, but the syntax really starts\nto look very noisy when you get a yaml file with 10 modules,\nand each modules has 20 lines in looking like;\n\n  nginx::sendfile: on\n  nginx::worker_connections: 10\n  nginx::gzip: on\n  nginx::tcp_nopush: on\nInstead, it's a lot cleaner/clearer and (I think) in keeping with\nthe spirit of yaml to have something such as;\n\n  nginx:\n    worker_connections: 10\n    sendfile: on\n    tcp_nopush: on\n    keepalive_timeout: 0\nThis patch and tests accomplish the latter syntax.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53896", "fixedVersions": ["HI 1.3.0"], "id": "53896", "issueType": "New Feature", "key": "HI-12", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:11a50a90-5585-4229-994a-72322be4a7d7", "resolution": "Fixed", "resolutionDate": "2013-10-29T11:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Make Yaml Syntax more Yaml like - With Tests :)", "timeSpent": "PT0S", "updated": "2014-06-02T15:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:25:00.000000"}, {"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Unclosing 1.4.0 tickets.", "created": "2014-06-02T16:01:00.000000"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "body": "Merged to master at 818b44b", "created": "2015-01-29T03:48:00.000000"}], "components": ["QA"], "created": "2013-09-11T10:55:00.000000", "creator": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e1ad460"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-4"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyql67:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_518145640_*|*_1_*:*_1_*:*_11000_*|*_10007_*:*_1_*:*_81677694_*|*_10009_*:*_1_*:*_581063_*|*_5_*:*_2_*:*_42427947274_*|*_6_*:*_2_*:*_2102813_*|*_10006_*:*_1_*:*_5382030001"}], "epicLinkSummary": "CI infrastructure and test improvements", "estimate": "PT0S", "externalId": "53841", "fixedVersions": ["HI 2.0.0"], "id": "53841", "issueType": "Improvement", "key": "HI-10", "labels": ["qa-reviewed"], "originalEstimate": "PT0S", "parent": "19562", "parentSummary": "CI infrastructure and test improvements", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "resolution": "Fixed", "resolutionDate": "2013-11-19T15:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Update Hiera Master Windows/Solaris jobs to vcloud", "timeSpent": "PT0S", "updated": "2015-03-25T18:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0c4d7910a200718b910a", "attachments": [], "comments": [{"author": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "body": "I've clone the Hiera-Acceptance-master job and pointed it towards stable but it's failing because the solaris pooling config wasn't cherry picked to the stable branch. You can find the job here:\nhttps://jenkins.puppetlabs.com/view/Hiera/job/Hiera-Acceptance-Solaris-stable/", "created": "2013-12-11T17:13:00.000000"}, {"author": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "body": "Getting the solaris and windows jobs to function have become a very low priority because the hiera tests only execute on the master (see the windows ticket). So these tests aren't actually running hiera on the agent and are effectively blocked on updating the tests.", "created": "2013-12-30T11:23:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "This work has been completed.", "created": "2014-06-12T13:15:00.000000"}, {"author": "623c0c4d7910a200718b910a", "body": "This work has been superseded by AIO testing pipelines being set up in QENG-1539. Closing per discussion with [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e].", "created": "2015-01-26T18:04:00.000000"}], "components": [], "created": "2013-09-09T16:50:00.000000", "creator": "557058:a183c491-b34a-426c-8769-5e1cd4f470e9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6ee6d829"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrhjj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9000_*|*_10009_*:*_1_*:*_19720049870_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_23833549160"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53640", "fixedVersions": [], "id": "53640", "issueType": "Sub-task", "key": "HI-9", "labels": [], "originalEstimate": "PT0S", "parent": "53682", "parentSummary": "Hiera stable acceptance tests use dynamically provisioned vcloud templates.", "priority": "Trivial", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:618f6155-e13f-4a8b-ab11-35c9f65fbb2f", "resolution": "Duplicate", "resolutionDate": "2015-01-26T18:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera stable acceptance testing for Solaris with Vcloud", "timeSpent": "PT0S", "updated": "2015-01-26T18:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0c4d7910a200718b910a", "attachments": [], "comments": [{"author": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "body": "I haven't cloned this and set it for stable because of two reasons:\na) The windows config in the master branch hasn't been cherry-picked back into stable, so there's no actual config files to run it against windows.... Next week unless someone beats me to it, I'll issue PRs for the the not-2003 windows boxes to stable...\nb) The master job is failing with Puppet 2.7 seemingly failing because a monkey patch isn't applicable to 2003R2? (see https://jenkins.puppetlabs.com/view/Hiera/job/Hiera-Acceptance-Windows-master/ do you know more about this [~accountid:70121:b72c16a2-594d-45f8-90bc-c6bc6c9510a8]?", "created": "2013-12-11T17:19:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Puppet 2.7.x on windows used to only support ruby 1.8.7 and the call to `Process.maxgroups` would be silently ignored. But ruby 19, will raise an exception `maxgroups=() function is unimplemented`. Daniel fixed this in https://github.com/puppetlabs/puppet/pull/648 by wrapping the call in a begin-rescue, but this change was only backported to stable, not 2.7.x\n\nCan you update the job to run against `stable` and `master` puppet only, not `2.7.x` or `3.1.x`?\n", "created": "2013-12-16T12:40:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Also, all of the hiera acceptance test only run on the master, so there is little value in these tests on windows. We should really rewrite them to be based on `puppet apply`. Also it would be good to make sure hiera can inject windows specific data, e.g. file paths.", "created": "2013-12-16T12:50:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "I just restored the windows-2003.cfg onto hiera/stable, so that if/when rewrite these tests to use {{puppet apply}} this job could be re-enabled on hiera/stable.", "created": "2013-12-17T16:12:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "This work is complete.", "created": "2014-06-12T13:17:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a] do you know if the current hiera windows acceptance failures are code issues or CI issues?", "created": "2014-06-12T14:37:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Looks like acceptance tests succeed, but jenkins job fails to find build artifact:\n\nhttps://jenkins.puppetlabs.com/job/Hiera-Acceptance-Windows-stable/facter=master,puppet=stable,slave=acc-coord/4/console\n\n{noformat}\nsystest completed successfully, thanks.\nRecording test results\nNo test report files were found. Configuration error?\nBuild step 'Publish JUnit test result report' changed build result to FAILURE\n[BFA] Scanning build for known causes...\n{noformat}", "created": "2014-06-12T14:50:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "[~accountid:63d40628f6e1b543161789a7] What is the correct path for junit output? {{beaker/junit/*.xml}} isn't it.", "created": "2014-06-12T16:10:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a] beaker creates a junit directory where it is run. For puppet and facter this means it will be in acceptance/junit, but hiera's acceptance tests are in a differently named directory, acceptance_tests, so for these it will be acceptance_tests/junit.\n\nFor extra credit, you might rename acceptance_tests to acceptance so that it's consistent with the other projects. I do love snowflakes.", "created": "2014-06-12T16:20:00.000000"}, {"author": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "body": "bq. For extra credit, you might rename acceptance_tests to acceptance so that it's consistent with the other projects. I do love snowflakes.\n\n +1", "created": "2014-06-12T16:32:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "Something is wrong with https://jenkins.puppetlabs.com/job/Hiera-Acceptance-Windows-stable/, --it is passing in the 2003 node configuration, but there is no mention of windows VMs in the output.-- \n\nThe lack of windows VMs in the console output is because we don't execute hiera acceptance on the agent. So that is actually to be expected.\n\nHowever, it seems odd that we are defining a matrix of stable & master versions. We don't do this for facter, e.g. https://jenkins.puppetlabs.com/view/Facter/view/Stable/job/Facter-Acceptance-Windows-stable/.\n\nIdeally both hiera and facter would test across all supported windows versions, e.g. 2003r2 x86, 2008r2 x64, 2012r2 x64.\n", "created": "2014-06-17T19:10:00.000000"}, {"author": "623c0c4d7910a200718b910a", "body": "This work has been superseded by AIO testing pipelines being set up in QENG-1539. Closing per discussion with [~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e].", "created": "2015-01-26T18:04:00.000000"}], "components": [], "created": "2013-09-09T16:49:00.000000", "creator": "557058:a183c491-b34a-426c-8769-5e1cd4f470e9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1082e892"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrhjb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11000_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_43553681117"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53573", "fixedVersions": [], "id": "53573", "issueType": "Sub-task", "key": "HI-8", "labels": [], "originalEstimate": "PT0S", "parent": "53682", "parentSummary": "Hiera stable acceptance tests use dynamically provisioned vcloud templates.", "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:618f6155-e13f-4a8b-ab11-35c9f65fbb2f", "resolution": "Duplicate", "resolutionDate": "2015-01-26T18:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera stable acceptance testing for Windows using VCloud", "timeSpent": "PT0S", "updated": "2015-01-26T18:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "28800", "aggregatetimeoriginalestimate": "28800", "assignee": "623c0c4d7910a200718b910a", "attachments": [], "comments": [{"author": "63d40635a05386069cdb69d6", "body": "[~accountid:70121:b72c16a2-594d-45f8-90bc-c6bc6c9510a8] where is this at?", "created": "2013-12-04T12:40:00.000000"}, {"author": "70121:b72c16a2-594d-45f8-90bc-c6bc6c9510a8", "body": "Short week from thanksgiving meant not a lot of platform work got done last week. This is planned for this week", "created": "2013-12-04T12:49:00.000000"}, {"author": "557058:c9e9d862-990b-48eb-b4e3-2e4daf1e6920", "body": "[~accountid:623a4c3b4a57610068e6782b] just cherry-picked the testing changes to Hiera stable.", "created": "2013-12-11T15:49:00.000000"}, {"author": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "body": "The Linux portion of this is done. I've made Hiera Acceptance (stable) have the same settings as Hiera-Acceptance-master including renaming it Hiera-Acceptance-stable. I've found github connection failures ^1^ and have opened a ticket to improve acceptance test uses of our internal mirror ^2^ (Currently because the whole thing is guarded by ssh keys for security only our Jenkins Slaves can clone from it....)\n\n1. https://jenkins.puppetlabs.com/view/Hiera/job/Hiera-Acceptance-stable/509/\n2. QE-638", "created": "2013-12-11T16:43:00.000000"}, {"author": "557058:2249d8e6-5f8c-489f-942b-1c2739792d34", "body": "The windows and solaris sub tasks are blocked, see the respective tasks.", "created": "2013-12-11T17:20:00.000000"}, {"author": "557058:a183c491-b34a-426c-8769-5e1cd4f470e9", "body": "[~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a] It would be great if you could help out with these efforts also please", "created": "2013-12-12T11:11:00.000000"}, {"author": "557058:91233464-4152-4228-81dd-172d43a52a03", "body": "[~accountid:557058:5f73e620-a5f5-44a8-a863-f1e0061b987a] Any update when this might happen?", "created": "2014-06-03T15:29:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "[~accountid:63d40628f6e1b543161789a7] RSN probably isn't the right answer. I'll sit down with [~accountid:557058:104b5720-714d-4539-b455-df472251ec89] and sort it out. Answer by Thursday.", "created": "2014-06-03T15:53:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "[~accountid:63d40628f6e1b543161789a7] This looks like something I can finish by the end of next week.", "created": "2014-06-05T14:00:00.000000"}, {"author": "557058:5f73e620-a5f5-44a8-a863-f1e0061b987a", "body": "[~accountid:63d40628f6e1b543161789a7] AFAICT, all Hiera acceptance jobs now use vcloud templates.", "created": "2014-06-12T13:14:00.000000"}], "components": ["QA"], "created": "2013-07-25T10:32:00.000000", "creator": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@40213ed3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-4"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqhcv:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_278000_*|*_10009_*:*_1_*:*_13059136283_*|*_5_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_27830234033"}], "description": "Scott Schneider has already merged in changes to master which allow the Hiera Acceptance (master) Jenkins job to run against current puppet acceptance with dynamically provisioned vcloud templates.  These templates do not exhibit the sporadic networking issues which have plagued the older templates.\n\nWe need to get these changes merged down into stable and update the stable jobs.", "epicLinkSummary": "CI infrastructure and test improvements", "estimate": "PT28800S", "externalId": "53682", "fixedVersions": [], "id": "53682", "issueType": "Task", "key": "HI-7", "labels": ["Acceptance", "Jenkins", "qa-reviewed"], "originalEstimate": "PT28800S", "parent": "19562", "parentSummary": "CI infrastructure and test improvements", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:252602f6-56c9-47a2-a176-2c9c57106330", "resolution": "Fixed", "resolutionDate": "2014-11-10T15:46:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera stable acceptance tests use dynamically provisioned vcloud templates.", "timeSpent": "PT0S", "updated": "2014-11-10T15:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "57600", "aggregatetimeoriginalestimate": "57600", "assignee": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "attachments": [], "comments": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There is code that validates the hiera-2 hiera.yaml in the class Puppet::Pops::Binder::Hiera2::Config that can be copied (although not reused since that would make hiera depend on Puppet::Pops issue handling and on Puppet::Pops::Types. \n\nThe hiera2 implementation deals with different yaml parsers, and the crazy exceptions that Psych implementation raises.", "created": "2013-09-25T12:55:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "Increased story points to 3 since this is quite tedious and time consuming (hand written checker, adding tests for many error conditions originating with the various ways yaml parsing can fail).", "created": "2013-09-25T12:57:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "There are providers that do not use datadir at all - would they fail?", "created": "2016-10-12T07:01:00.000000"}, {"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "I'm inclined to close this as won't-fix - as long as hiera 5 has better error checking for these kinds of config file typos. I acknowledge it's a problem but it seems not worth the time to dig in and validate each of the kinds of yaml errors that could arise. [~accountid:557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715] have you tried this kind of file validation as part of automated or manual hiera.yaml testing?  If so great, if not let's spin this into related PUP tickets.", "created": "2017-01-30T14:56:00.000000"}, {"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "body": "[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] Hiera 5 actually reads hiera 3 format yaml and checks the structure - all brand new code. Basically Hiera 5 takes over a lot of the upper levels of the hiera 3 logic. If there are flaws in Puppet 4.9.0/hiera 5 there should be PUP tickets logged for that.", "created": "2017-01-30T15:22:00.000000"}, {"author": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "body": "If Hiera 5 validates the structure of the yaml file, then I think that's definitely good enough. The problem here was that Hiera would silently accept a configuration with an incorrect structure for core values like datadir --- and then mysterious errors of the sort that take a long time to trace down would start occurring.", "created": "2017-01-31T03:35:00.000000"}, {"author": "557058:e346dd15-0cb4-4ff2-a5d8-46553d04e715", "body": "we haven't tested for edge cases in config structure specifically.\nwe could probably get more bang in unit tests for stuff like that.\n\ni'll look into it", "created": "2017-01-31T08:56:00.000000"}], "components": [], "created": "2013-07-16T10:16:00.000000", "creator": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@567ad7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-9"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyr4xr:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_121000_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_111821908794"}], "description": "Hiera does have a [validate method in config.rb|https://github.com/puppetlabs/hiera/blob/1.2.1/lib/hiera/config.rb#L51-L62] that is applied to the data structure loaded from `hiera.yaml`. Unfortunately, this validator currently only traps errors arising from missing the `deep_merge` gem.\n\nHiera assumes that the config file will follow a certain structure and will crash or misbehave in strange ways if this structure is not present. For example, [the :backends: and :hierarchy: keys can be set to arrays or single strings|http://docs.puppetlabs.com/hiera/1/configuring.html#example-config-file]. However, the `:datadir` key will misbehave in weird ways if set to anything other than a string:\n\n{code}\n    # The documented structure for this setting is a single string\n    :yaml:\n      :datadir: \"/path/to/some/dir/%{::environment}\"\n\n    # By coincidence, using an array will work\n    :yaml:\n      :datadir:\n        - /path/to/some/dir\n\n    # But... variable interpolation will mysteriously fail\n    :yaml:\n      :datadir:\n        - \"/path/to/some/dir/%{::environment}\"\n{code}", "epicLinkSummary": "Issues encountered by commercial customers", "estimate": "PT57600S", "externalId": "53571", "fixedVersions": [], "id": "53571", "issueType": "Bug", "key": "HI-6", "labels": ["customer", "redmine"], "originalEstimate": "PT57600S", "parent": "27033", "parentSummary": "Issues encountered by commercial customers", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:aa277a93-6688-4f34-ad9d-e53477acf74b", "resolution": "Won't Fix", "resolutionDate": "2017-01-30T14:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Hiera needs to validate the structure of its config file", "timeSpent": "PT0S", "updated": "2017-01-31T08:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "28800", "aggregatetimeoriginalestimate": "115200", "aggregatetimespent": "86400", "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:25:00.000000"}], "components": [], "created": "2013-06-19T21:39:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5c7a988f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyr5r3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4676000_*|*_3_*:*_1_*:*_680939000_*|*_5_*:*_1_*:*_28253591519_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1105530000"}], "description": "The backend API needs to be changed in a way where a backend returns a bindings model as opposed just performing a lookup. \n\n<pre>\nproduce_bindings(fact_hash)\n</pre>\n\nThe method produces <code>NamedBindings</code> and gets a Hash containing facts.\nThis task is about implementing this for the JSON and YAML hiera backends.", "epicLinkSummary": null, "estimate": "PT28800S", "externalId": "53708", "fixedVersions": [], "id": "53708", "issueType": "Sub-task", "key": "HI-3", "labels": [], "originalEstimate": "PT115200S", "parent": "54006", "parentSummary": "Enhance Hiera to support data in modules", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Fixed", "resolutionDate": "2013-07-10T15:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Implement hiera2 Backend API for JSON and YAML", "updated": "2014-06-02T15:25:00.000000", "votes": "0", "watchers": [], "worklogs": [{"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "startDate": "2013-07-02T18:24:00.000000", "timeSpent": "PT180S"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "startDate": "2013-07-02T18:24:00.000000", "timeSpent": "PT10620S"}, {"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "startDate": "2013-07-08T07:34:00.000000", "timeSpent": "PT75600S"}]}, {"affectedVersions": [], "aggregatetimeoriginalestimate": "28800", "aggregatetimespent": "28800", "assignee": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:22:00.000000"}], "components": [], "created": "2013-06-19T21:33:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@9d0925d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyr5qv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_5035000_*|*_3_*:*_2_*:*_109099000_*|*_5_*:*_1_*:*_28253452645_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1677307000"}], "description": "Make the hierarchy specification include categorization and categories as defined by ARM-8.\nThis should be done by allow the :hierarchy: key to refer to a  hash in the hieraconf.yaml\ne.g.\n\n<pre>\n:hierarchy:\n  os: \n    - '%{osfamily}'\n    - 'for_%{osfamily}.yaml'\n</pre>\n\nWhere, the precedence is highest at the top of the list. The 'os' in the example is the categoryzation, the\nfirst array entry is the category value to use, and the second array entry is the hiera path.\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "53635", "fixedVersions": [], "id": "53635", "issueType": "Sub-task", "key": "HI-2", "labels": [], "originalEstimate": "PT28800S", "parent": "54006", "parentSummary": "Enhance Hiera to support data in modules", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Fixed", "resolutionDate": "2013-07-10T15:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Add categorization/category to hierarchy specification", "updated": "2014-06-02T15:22:00.000000", "votes": "0", "watchers": [], "worklogs": [{"author": "557058:c7e2df03-377d-4bf0-9407-106b8483430d", "startDate": "2013-07-09T08:52:00.000000", "timeSpent": "PT28800S"}]}, {"affectedVersions": [], "aggregatetimeestimate": "28800", "aggregatetimeoriginalestimate": "144000", "aggregatetimespent": "122400", "assignee": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "attachments": [], "comments": [{"author": "557058:58c5336a-e9d7-4eff-b221-85517090556b", "body": "Correcting resolved tickets to closed as needed (triage-a-thon).", "created": "2014-06-02T15:21:00.000000"}], "components": [], "created": "2013-06-19T18:12:00.000000", "creator": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@45b90258"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "PUP-42"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqo9b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_16641000_*|*_5_*:*_1_*:*_28253212903_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_1787095000"}], "description": "Enhance hiera to suport data in modules.\n\n - modules should have the ability to contribute hiera data / bindings\n - modules should have the ability to use different backends\n - validation of contributions is required (may otherwise step on each other)\n - update the API to be declarative\n\n", "epicLinkSummary": "Support data and puppet extensions contributed from modules", "estimate": "PT0S", "externalId": "54006", "fixedVersions": [], "id": "54006", "issueType": "New Feature", "key": "HI-1", "labels": [], "originalEstimate": "PT0S", "parent": "28102", "parentSummary": "Support data and puppet extensions contributed from modules", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Welcome to your project</h3>\n<p>Everything you need to know about how your project is running is tracked on this page. As your project evolves, the information will be updated. Use the tabs on the left to navigate within your project.</p>\n<h4><a name=\"Describeyourprojecthere\"></a>Describe your project here</h4>\n<p>Change the project description to include details about your project.</p>", "projectKey": "HI", "projectLead": "557058:91233464-4152-4228-81dd-172d43a52a03", "projectName": "Hiera", "projectType": "software", "projectUrl": null, "reporter": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "resolution": "Fixed", "resolutionDate": "2013-07-10T15:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 10:14 AM", "summary": "Enhance Hiera to support data in modules", "updated": "2014-06-02T15:21:00.000000", "votes": "0", "watchers": [], "worklogs": [{"author": "557058:80b1a2d0-6c75-4995-bdc3-c422bab7aabd", "startDate": "2013-07-09T11:01:00.000000", "timeSpent": "PT7200S"}]}], "key": "HI", "lead": "557058:91233464-4152-4228-81dd-172d43a52a03", "name": "Hiera", "template": "com.pyxis.greenhopper.jira:gh-simplified-scrum-classic", "type": "software", "url": "", "versions": [{"name": "HI 1.3.0", "releaseDate": "2013-11-13", "released": true}, {"name": "HI 1.3.1 RC", "releaseDate": "2014-01-23", "released": true}, {"name": "HI 1.3.1", "releaseDate": "2014-01-23", "released": true}, {"name": "HI 1.3.2 RC", "releaseDate": "2014-02-19", "released": true}, {"name": "HI 1.3.2", "releaseDate": "2014-02-26", "released": true}, {"name": "HI 1.3.3", "releaseDate": "2014-05-22", "released": true}, {"name": "HI 1.3.4", "releaseDate": "2014-06-10", "released": true}, {"name": "HI 2.0.0", "releaseDate": "2015-03-25", "released": true}, {"name": "HI 3.0.0", "releaseDate": "2015-06-15", "released": false}, {"name": "HI 3.0.1", "releaseDate": "2015-06-24", "released": true}, {"name": "HI 3.0.2", "releaseDate": "2015-08-16", "released": true}, {"name": "HI 3.0.3", "releaseDate": "2015-09-10", "released": true}, {"name": "HI 3.0.4", "releaseDate": "2015-10-29", "released": true}, {"name": "HI 3.0.5", "releaseDate": "2015-11-17", "released": true}, {"name": "HI 3.0.6", "releaseDate": "2016-01-25", "released": true}, {"name": "HI 3.1.0", "releaseDate": "2016-03-16", "released": true}, {"name": "HI 3.1.1", "releaseDate": "2016-03-24", "released": true}, {"name": "HI 3.1.2", "releaseDate": "2016-04-26", "released": true}, {"name": "HI 3.2.0", "releaseDate": "2016-05-17", "released": true}, {"name": "HI 3.2.1", "releaseDate": "2016-08-10", "released": true}, {"name": "HI 3.2.2", "releaseDate": "2016-11-01", "released": true}, {"name": "HI 3.3.0", "releaseDate": "2017-02-01", "released": true}, {"name": "HI 3.3.1", "releaseDate": "2017-03-09", "released": true}, {"name": "HI 3.3.2", "releaseDate": "2017-06-13", "released": true}, {"name": "HI 3.3.3", "releaseDate": "2018-04-17", "released": true}, {"name": "HI 3.4.0", "releaseDate": "2017-06-27", "released": true}, {"name": "HI 3.4.1", "releaseDate": "2017-09-13", "released": true}, {"name": "HI 3.4.2", "releaseDate": "2017-10-02", "released": true}, {"name": "HI 3.4.3", "releaseDate": "2018-04-17", "released": true}, {"name": "HI 3.4.4", "releaseDate": "2018-08-22", "released": true}, {"name": "HI 3.4.5", "releaseDate": "2018-09-18", "released": true}, {"name": "HI 3.4.6", "releaseDate": "2019-01-15", "released": true}, {"name": "HI 3.5.0", "releaseDate": "2018-12-18", "released": true}, {"name": "HI 3.8.0", "releaseDate": "2021-12-13", "released": true}, {"name": "HI 3.6.0", "releaseDate": "", "released": true}, {"name": "HI 3.7.0", "releaseDate": "", "released": true}, {"name": "HI 3.8.1", "releaseDate": "2022-04-19", "released": true}, {"name": "3.9.0", "releaseDate": "2022-04-19", "released": true}, {"name": "3.10.0", "releaseDate": "2022-06-01", "released": true}, {"name": "HI 3.11.0", "releaseDate": "", "released": false}]}]}