{"projects": [{"components": [{"description": "", "name": "API"}, {"description": "", "name": "CI"}, {"description": "Command line client", "name": "Client"}, {"description": "", "name": "DOCS"}, {"description": "EL image build and microkernel agent", "name": "Microkernel"}, {"description": "", "name": "Puppet Module"}, {"description": "", "lead": "623cfdfb8d8b9c0068b93e3c", "name": "QA"}, {"description": "", "name": "Server"}, {"description": "", "name": "Tasks"}, {"description": "", "lead": "557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df", "name": "UX"}], "description": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "externalName": "Razor", "issues": [{"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:9ce6b29d-9993-418a-8b1b-4376b618ec97", "body": "Hi , please update on this.", "created": "2022-12-05T01:44:00.000000"}], "components": ["Puppet Module"], "created": "2022-11-21T22:16:00.000000", "creator": "557058:9ce6b29d-9993-418a-8b1b-4376b618ec97", "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": "{quote}Enumeration of requirements to consider the story ticket done.\n{quote}"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@733d7ba3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|o0kyk9:"}], "description": "{quote}_Hi ,_ \n\n_Does Razor supports ESXI 7.0 and ESXI 8.0 . if so will the same task files work ?_ \n\n_Similarly does it support Ubuntu 22 LTS._\n\n\u00a0\n{quote}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11707", "fixedVersions": [], "id": "11707", "issueType": "Task", "key": "RAZOR-1146", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:9ce6b29d-9993-418a-8b1b-4376b618ec97", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Comply: Feature", "timeSpent": "PT0S", "updated": "2022-12-05T01:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "623a43bf1c7f6a0070491571", "created": "2020-05-13T07:31:00.000000", "name": "image-2020-05-13-15-31-00-473.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10220"}, {"attacher": "623a43bf1c7f6a0070491571", "created": "2020-05-13T07:32:00.000000", "name": "image-2020-05-13-15-32-28-334.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10207"}], "comments": [], "components": ["Client"], "created": "2020-05-13T07:33:00.000000", "creator": "623a43bf1c7f6a0070491571", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@647081bc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|o01uso:"}], "description": "I've setup a tag as follows:\n\n\u00a0\n{code:java}\nrazor create-tag --name deploy-target-set  --rule '[\"and\", [\"str\", [\"metadata\", \"TARGET_DISK\"]], [\"str\", [\"metadata\", \"DISK_URL\"]]]'\n{code}\nwhich should only match when nodes have both the *TARGET_DISK* and *DISK_URL* metadata set.\n\nThe tags seems to work as expected, when both the metadata entries are set the tag will be applied:\n\n!image-2020-05-13-15-31-00-473.png!\n\n\u00a0What does not seem to work is when the metadata is removed using the following command\n{code:java}\nrazor remove-node-metadata node1 DISK_URL\nrazor remove-node-metadata node1 TARGET_DISK\n{code}\n\u00a0the tag is not removed\n\n!image-2020-05-13-15-32-28-334.png!", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11725", "fixedVersions": [], "id": "11725", "issueType": "Bug", "key": "RAZOR-1141", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a43bf1c7f6a0070491571", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tags not being removed when rule is not met", "timeSpent": "PT0S", "updated": "2020-05-13T07:33:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2020-03-03T01:51:00.000000", "creator": "557058:9ce6b29d-9993-418a-8b1b-4376b618ec97", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@702e18be"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xx:1"}], "description": "Hi,\n\nObjective is to resolve the current bug in the preseed.erb file in the path : [https://github.com/puppetlabs/razor-server/tree/master/tasks/ubuntu.task]\n\nThe issue is with the ubuntu bionic version where the MAC\n\naddress is getting replaced with UUID to receive the IP from DHCP.\n\nAlso one enhancement has been added for installing OS in the\n\ndefault disk (/dev/sda) when NVMe SSDs are connected as\n\ntestdevices.\n\n*Fix :*\u00a0 \n\nFollowing are the changes made to the Razor Server code ([https://github.com/puppetlabs/razor-server/tree/master/tasks/ubuntu.task]\n\n) to fix the bug.\n\n*File name :*\u00a0 \n\n*preseed.erb*\n\n*changes :* \n\n1) Added the dhcp identifier as \u201cmac\u201d in the netcfg yaml file\n\n_sed -i '8i\\\u00a0\u00a0\u00a0\u00a0\u00a0 dhcp-identifier: mac' /target/etc/netplan/01-netcfg.yaml; \\_\n\nThis change fixes the MAC address issue for the Ubuntu bionic release.\n\n2) Added the below change for getting the default OS disk (/dev/sda)\n\n\u00a0 when NVMe SSDs are connected as testdevices.\n\n\u00a0\n\nOriginal: d-i partman-auto/disk string /dev/sda\n\nChange: _d-i partman-auto/disk string <%= node.facts['blockdevices'].split(',')[-1] %>_\n\n\u00a0\n\nThis change enhances the current implementation to use NVMe SSDs as test devices.\n\nPull request :\n\nsubmitted changes in git : [https://github.com/puppetlabs/razor-server|https://github.com/puppetlabs/razor-el-mk]\n\nFollowed guidelines as per the link : [https://github.com/puppetlabs/.github/blob/master/CONTRIBUTING.md] and created a pull request link as below .\n\nPULL request link :\n\n[https://github.com/puppetlabs/razor-server/pull/441|https://github.com/puppetlabs/razor-el-mk/pull/39]\n\n\u00a0\n\nPlease review and approve the changes.\n\n\u00a0\n\n\u00a0\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11505", "fixedVersions": [], "id": "11505", "issueType": "Bug", "key": "RAZOR-1140", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:9ce6b29d-9993-418a-8b1b-4376b618ec97", "status": "Ready for Merge", "statusCategory": "In Progress", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ubuntu bionic DHCP MAC issue and Fix", "timeSpent": "PT0S", "updated": "2021-12-08T02:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "5b923e606d3a2a2be1b19fcf", "created": "2020-02-03T07:27:00.000000", "name": "image-2020-02-03-19-57-30-932.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10262"}, {"attacher": "5b923e606d3a2a2be1b19fcf", "created": "2020-02-04T06:25:00.000000", "name": "screenshot-1.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10292"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:5b923e606d3a2a2be1b19fcf] Can you try this with the latest version (1.9.7)? I believe we fixed this problem in RAZOR-1136.", "created": "2020-02-03T10:51:00.000000"}, {"author": "5b923e606d3a2a2be1b19fcf", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]  I have installed latest version of razor server but no lucky , i am getting same error only ,\n\n[root@razor repo]# /opt/puppetlabs/puppet/bin/razor -v\n        Razor Server version: 20c9aff84d829dd1b69ff8d092cbc38b14c0290d\n        Razor Client version: 1.3.0\n\n !screenshot-1.png|thumbnail! \n\nI am trying this in virtualbox with two different network one for razor dhcp another one for internal communication network .\n\nSamba configuration detail:\n[root@razor repo]# cat /etc/samba/smb.conf\n# See smb.conf.example for a more detailed config file or\n# read the smb.conf manpage.\n# Run 'testparm' to verify the config is correct after\n# you modified it.\n\n[global]\n   security = user\n   bind interfaces only = yes\n   server string = Razor Samba Server for Windows Installs\n   map to guest = Bad User\n   guest account = nobody\n[homes]\n        comment = Home Directories\n        valid users = %S, %D%w%S\n        browseable = No\n        read only = No\n        inherit acls = Yes\n\n[printers]\n        comment = All Printers\n        path = /var/tmp\n        printable = Yes\n        create mask = 0600\n        browseable = No\n\n[print$]\n        comment = Printer Drivers\n        path = /var/lib/samba/drivers\n        write list = @printadmin root\n        force group = @printadmin\n        create mask = 0664\n        directory mask = 0775\n[razor]\n   browsable = yes\n   comment = Razor Share\n   guest ok = yes\n   guest only = yes\n   path = /opt/puppetlabs/server/data/razor-server/repo\n   public = yes\n   writable = no\n\nI have provisioned centos and ubuntu nodes , but windows giving error , please help me out on this ", "created": "2020-02-04T06:29:00.000000"}, {"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "Razor is no longer supported.", "created": "2021-07-26T12:14:00.000000"}], "components": ["Server"], "created": "2020-02-03T07:28:00.000000", "creator": "5b923e606d3a2a2be1b19fcf", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1e2aed26"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzzupr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Feb/20"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_3_*:*_46452964103_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_130221717"}], "description": "Hi , \n\n  I am trying to provision windows image in virtualbox . After starting installation in command prompt , reazor-client.ps1 script given error like \"could not map network driver\" and samba server not accessible\n\ntool version:\nRazor Server version: 1.9.3\nRazor Client version: 1.3.0\n\n\n ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11309", "fixedVersions": [], "id": "11309", "issueType": "Bug", "key": "RAZOR-1139", "labels": ["experiment", "support"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5b923e606d3a2a2be1b19fcf", "resolution": "Won't Fix", "resolutionDate": "2021-07-26T12:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor windows machine provisioning could not map network driver and samba share not accessible", "timeSpent": "PT0S", "updated": "2021-07-26T12:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2020-01-23T01:52:00.000000", "creator": "557058:9ce6b29d-9993-418a-8b1b-4376b618ec97", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3238e312"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzzm73:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_146229_*|*_1_*:*_1_*:*_37053905_*|*_10007_*:*_1_*:*_1128347023_*|*_5_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_600202287"}], "description": "Hi,\n\nIn the Razor microkernel downloaded from the link :\n\n[http://pup.pt/razor-microkernel-009]\n\nBelow are the observations :\n\n1. Observed that DHCP client\u00a0 is not installed by default because of which the MAC address is not assigned with IP addresses properly.\n\n2. Also the microkernel image creation is not working as expected if compiled independently.\n\n*Fix :*\n\nHence added the below changes to the microkernel.ks which worked fine.\n\n1. For compilation and creation of microkernel image modified below line by replacing the size of the sector to 4096 : \npart / --size *4096* --fstype ext4 --ondisk sda\n\n2. For fixing the dhcp mac issue in the microkernel ,added the below installables in the microkernel\n\n*dhcp-libs*\n*dhcp-common*\n*dhclient*\n\nsubmitted changes in git : [https://github.com/puppetlabs/razor-el-mk]\n\nFollowed guidelines as per the link : [https://github.com/puppetlabs/.github/blob/master/CONTRIBUTING.md] and created a pull request link as below .\n\nPULL request link :\n\n[https://github.com/puppetlabs/razor-el-mk/pull/39]\n\n\u00a0\n\nPlease review and approve the changes.\n\n\u00a0", "environment": "Tested in CENTOS 7.5", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11722", "fixedVersions": ["razor-el-mk 010"], "id": "11722", "issueType": "Bug", "key": "RAZOR-1138", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:9ce6b29d-9993-418a-8b1b-4376b618ec97", "resolution": "Fixed", "resolutionDate": "2020-02-12T12:21:00.000000", "status": "Resolved", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor microkernel-009 dhcp issue and fix", "timeSpent": "PT0S", "updated": "2020-02-12T13:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2020-01-13T12:12:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4b11d476"}, {"fieldName": "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": "RAZOR-794"}, {"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|hyk3xx:"}], "description": "Torquebox has been abandoned, so we need to replace it. Most of Razor's needs here can be covered via [puma|https://github.com/puma/puma]. The remainder (out of scope for this ticket) is to convert the message queue.", "epicLinkSummary": "Migrate Razor off Torquebox", "estimate": "PT0S", "externalId": "11382", "fixedVersions": [], "id": "11382", "issueType": "Task", "key": "RAZOR-1137", "labels": [], "originalEstimate": "PT0S", "parent": "11241", "parentSummary": "Migrate Razor off Torquebox", "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Move from Torquebox to puma", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2020-01-06T11:40:00.000000", "creator": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4cb3cede"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzzbsf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_261082958_*|*_1_*:*_1_*:*_30248_*|*_10007_*:*_1_*:*_635069_*|*_5_*:*_1_*:*_2154464269_*|*_6_*:*_1_*:*_0"}], "description": "second-stage.ps1 tries to map an SMB share with dummy authentication, but in the very latest WinPE (Win10 build 1903) this gives an error about no logon session existing. PR 438 on the puppetlabs/razor-server repo fixes this.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11308", "fixedVersions": ["razor-server 1.9.7"], "id": "11308", "issueType": "Improvement", "key": "RAZOR-1136", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "resolution": "Fixed", "resolutionDate": "2020-01-09T12:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Handle both auth and no-auth forms for New-PSDrive in Windows task", "timeSpent": "PT0S", "updated": "2020-02-03T10:52:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by RAZOR-1001.", "created": "2020-01-13T12:15:00.000000"}], "components": ["Server"], "created": "2019-10-31T17:10:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@63b29ad5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzy5bz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5730_*|*_3_*:*_1_*:*_1050066956_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5329393131"}], "description": "In a step toward moving off of Torquebox, we should begin by using a different message queue.\n\nOptions to consider:\n- Hand-built, backend of postgres\n- RabbitMQ\n- Apache Kafka\n\nOur usage of torquebox-messaging is fairly straightforward: one queue for sequel and one (synchronous) for running hooks.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11720", "fixedVersions": [], "id": "11720", "issueType": "Task", "key": "RAZOR-1135", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Duplicate", "resolutionDate": "2020-01-13T12:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Replace torquebox-messaging", "timeSpent": "PT0S", "updated": "2020-01-13T12:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "60467c4ececcdd006a087e0c", "body": "I have an exact same issue, I upgrade from 1.7.0 and boom and now nothing works", "created": "2021-03-15T20:35:00.000000"}, {"author": "60467c4ececcdd006a087e0c", "body": "downgrading to 1.9.5 works now", "created": "2021-03-15T20:48:00.000000"}], "components": ["Server"], "created": "2019-10-08T09:15:00.000000", "creator": "557058:8280a44f-cfbf-43ae-a817-64da082aa28e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4370d7af"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:z"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Mar/21"}], "description": "We just upgraded (via RPM from the puppetlabs repos) to razor-server 1.9.6.0-1.el7 from\u00a0razor-server 1.6.1-1.el7, and now razor-server has stopped responding even though it's running.\n{quote}# razor nodes\nError from doing GET\u00a0[http://localhost:8150/api]\n404 Resource Not Found\n#{quote}\n\u00a0\n/var/log/puppetlabs/razor-server/server.log excerpts:\n\u00a0\n{quote}ERROR [org.hornetq.core.client] (Old I/O server worker (parentId: -605516930, [id: 0xdbe88b7e, /0.0.0.0:5445])) HQ214013: Failed to decode packet: java.lang.IndexOutOfBoundsException: Readable byte limit exceeded: 4\n:\n: Stack trace follows\n:\nERROR [org.hornetq.core.client] (Old I/O server worker (parentId: -605516930, [id: 0xdbe88b7e, /0.0.0.0:5445])) HQ214013: Failed to decode packet: java.lang.IllegalArgumentException: HQ119032: Invalid type: 0\n:\n: Stack trace\n:{quote}\n\u00a0\nI did also spot this message, but I'm not sure whether it's related or not:\u00a0\n\u00a0\n{quote}HQ121005: Invalid \"host\" value \"0.0.0.0\" detected for \"netty\" connector. Switching to \"[zsinf01.my.net|http://zsinf01.my.net/]\". If this new address is incorrect please manually configure the connector to use the proper one.{quote}\n\u00a0\nIt should be noted that, after multiple restarts to try to resolve this, the above errors aren't recurring, but the log ends with:\n\u00a0\n{quote}INFO\u00a0 [org.jboss.as] (Controller Boot Thread JBAS0158754: JBoss AS 7.2.x.slim.incremental.16 \"Janus\" started in 3120ms - Started 104 of 156 services (52 services are passive or on-demand){color:#333333}\u00a0{color}{quote}\n\u00a0\nPostgresql is running, but I'm not fluent enough in pg to know how to check beyond logs and \"ps-aux | grep postg\".", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11689", "fixedVersions": [], "id": "11689", "issueType": "Bug", "key": "RAZOR-1134", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:8280a44f-cfbf-43ae-a817-64da082aa28e", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Post-upgrade to 1.9.6 razor-server isn't listening", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623d013dbef8a60068c82718", "body": "{noformat}\n# cat README\nThis is a Microkernel for the new Razor\n(https://github.com/puppetlabs/razor-server)\n\nThe microkernel was built from https://github.com/puppetlabs/razor-el-mk\nat commit release-008-6-g1f7bd44\n\nFor instructions on how to set things up, read\nhttps://github.com/puppetlabs/razor-server/wiki/Installation\n\nTo verify the kernel and initrd in this tar, run\n\n  sha256sum -c SHA256SUM\n\nThe SHA256SUM file is signed with my public key (FC6E8A22). You can verify it\nby running\n\n  gpg --verify SHA256SUM.sig\n{noformat}\n\n{noformat}\n# cat SHA256SUM\n8664a4560115f9687ae071f6758734f90d7b9a5bd770783621b9ffdb8e84ce40  initrd0.img\n1821d150ca2244fe1a0e8b0d69e8126670b08d7cc1c52139bcf47fc41a2effd0  vmlinuz0\n{noformat}", "created": "2021-04-06T16:23:00.000000"}], "components": ["Microkernel"], "created": "2019-10-06T11:40:00.000000", "creator": "623c1281a9575800695acd02", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4efd137f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:y"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Apr/21"}], "description": "HI,\u00a0\n\nIn Razor Microkernel README , there is an update happening with build version.\n\nIn the latest microkernel-009 , it shows as release8-6-g[1f7bd44|https://github.com/puppetlabs/razor-el-mk/commit/1f7bd4433ff154e81ab72e3dca26592df2f10fec]\u00a0but actual release version is 9 as per the commit id .\u00a0\n\nPlease check.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11303", "fixedVersions": [], "id": "11303", "issueType": "Bug", "key": "RAZOR-1133", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c1281a9575800695acd02", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor microkernel-009 is not showing correct build version in README", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Microkernel"], "created": "2019-10-04T21:10:00.000000", "creator": "623c1281a9575800695acd02", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@561ef864"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:x"}], "description": "Hi,\u00a0\n\nI installed puppet enterprise 2019.1 version in Supermicro server 6029wtrt model.\u00a0\n\nwe are not able to get the dhclient properly installed in the microkernel of Razor.\u00a0\n\nDue to this the same IP address is getting assigned to different MAC addresses.\u00a0\n\nAlso observed that the Ruby version is still showing 2.0 in the microkernel eventhough it is newly installed. The kernel version is 3.0.957 which indicates it is new.\u00a0\n\nPlease give inputs how to resolve the dhcp issue.\u00a0\n\n\u00a0", "environment": "puppet 2019.1\n\nsupermicro 6029 wtrt\u00a0\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11686", "fixedVersions": [], "id": "11686", "issueType": "Bug", "key": "RAZOR-1132", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c1281a9575800695acd02", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "New Razor setup not installing dhclient in Microkernel", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "623d013dbef8a60068c82718", "created": "2019-09-30T17:45:00.000000", "name": "image-2019-09-30-17-45-32-129.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10253"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "By default, Razor's microkernel doesn't ship with any extra drivers above what the particular version of CentOS 7 includes. If this is an important driver, CentOS 7 should include it in a recent release, and we can rebuild the microkernel on that version. Otherwise, I'd suggest building a custom microkernel that includes the driver from https://github.com/puppetlabs/razor-el-mk.\n\nI'll close this issue for now", "created": "2019-12-03T14:36:00.000000"}], "components": ["Microkernel"], "created": "2019-09-30T17:50:00.000000", "creator": "623d013dbef8a60068c82718", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4cf88bca"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CVE-ID", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textfield", "value": "CVE-2019-6260"}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:w"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Dec/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3870991110_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_1650592264"}], "description": "Supermicro is updating the majority of their BIOS firmware to plug\u00a0CVE-2019-6260 \"pantsdown\".\u00a0 After updating to this version, the razor-microkernel freezes up and reports continual CPU stuck error messages:\n\n!image-2019-09-30-17-45-32-129.png!\n\nWhen reported to Supermicro, they informed us that we need to update to a newer\u00a0Aspeed Linux VGA driver.\n\n\u00a0\n\n{quote}\n\nThe IPMI 3.80 included \u201cCVE-2019-6260\u201d security patch aka \u201cpantsdown\u201d. Newer Linux Ubuntu 18.04 probably doesn\u2019t have the issue, but older OS like Ubuntu 14 probably will get stuck during boot up, so it needs newer VGA driver. The Aspeed Linux VGA driver can be downloaded from\nhttps://www.aspeedtech.com/support.php [aspeedtech.com]\n\nHere are the information for the CVE-2019-6260\nhttps://www.supermicro.com/Bios/softfiles/7364/X10DRW-I-IT_IPMI_3_80_release_notes.pdf\nhttps://nvd.nist.gov/vuln/detail/CVE-2019-6260 [nvd.nist.gov]\n\n-- Supermicro support\n\n{quote}\n\nThis is also reported in other FAQs such as:\u00a0[https://www.supermicro.com/support/faqs/faq.cfm?faq=30142]\n\n\u00a0\n\nThis appears to affect the majority of the X10 and X11 Supermicro motherboards.\n\n\u00a0", "environment": "Supermicro X10 and X11 motherboards", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11927", "fixedVersions": [], "id": "11927", "issueType": "Bug", "key": "RAZOR-1131", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623d013dbef8a60068c82718", "resolution": "Won't Fix", "resolutionDate": "2019-12-03T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "BUG: soft lockup - CPU stuck - need updated ast driver for microkernel due to Supermicro CVE-2019-6260 \"pantsdown\" [razor-el-mk]", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Microkernel"], "created": "2019-09-27T18:29:00.000000", "creator": "623c1281a9575800695acd02", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b0e58ed"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:v"}], "description": "Hi ,\u00a0\n\n\u00a0\n\nI upgraded microkernel to 009 due to compatibility issue with new supermicro servers.\u00a0\n\nAble to get the facts but facing network issues and observed that the dhclient is not installed due to which the Networkmanager is creating the internal lease files instead of the dhclient based lease files.\u00a0\n\nObserved that there seems to be some update happened in facter module ( FACT-1851)\n\nHow to upgrade to new versions of razor/puppet with out disturbing the environment as it is a production setup?\n\n\u00a0\n\n\u00a0", "environment": "Supermicro x10, x11 Mother boards\n\nI am using Puppet enterprise 2018 and the razor version is 1.8.1 for server.\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11684", "fixedVersions": [], "id": "11684", "issueType": "Bug", "key": "RAZOR-1130", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c1281a9575800695acd02", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Upgraded to microkernel-009 but dhclient is not installed", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hello,\n\nI haven't seen the microkernel built via docker before, so not sure if that works. You could try running the `bin/build-mk` script that exists inside the `razor-el-mk` repository. If that fails, you may need to build it on either a VM or a bare-metal machine.\n\nHope that helps!", "created": "2019-09-24T00:47:00.000000"}], "components": [], "created": "2019-09-22T21:31:00.000000", "creator": "623c1281a9575800695acd02", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@26e6b039"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:u"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Sep/19"}], "description": "I tried to build the microkernel in a CENTOS contianer( centos 7.7 ) . Installed Ruby and other tools successfully. But getting this below error..\n\n\u00a0\n\n\u00a0\n\n[root@33438de3a9b9 razor-el-mk-master]# ./build-livecd-root\nfatal: Not a git repository (or any of the parent directories): .git\nWorking in directory /var/tmp/build-livecd-ytW8NK\n* Running livecd-creator\nUsing title 'Microkernel' and product 'Microkernel'\nExtending sparse file /var/tmp/imgcreate-ovOd0o/tmp-Y_kc9F/ext3fs.img to 1073741824\nlosetup: find unused loop device failed: No such file or directory\nTraceback (most recent call last):\n File \"/usr/bin/livecd-creator\", line 236, in <module>\n sys.exit(main())\n File \"/usr/bin/livecd-creator\", line 211, in main\n creator.mount(options.base_on, options.cachedir)\n File \"/usr/lib/python2.7/site-packages/imgcreate/creator.py\", line 524, in mount\n self._mount_instroot(base_on)\n File \"/usr/lib/python2.7/site-packages/imgcreate/live.py\", line 222, in _mount_instroot\n LoopImageCreator._mount_instroot(self, base_on)\n File \"/usr/lib/python2.7/site-packages/imgcreate/creator.py\", line 936, in _mount_instroot\n self.__instloop.mount()\n File \"/usr/lib/python2.7/site-packages/imgcreate/fs.py\", line 501, in mount\n self.__create()\n File \"/usr/lib/python2.7/site-packages/imgcreate/fs.py\", line 493, in __create\n self.disk.create()\n File \"/usr/lib/python2.7/site-packages/imgcreate/fs.py\", line 360, in create\n LoopbackDisk.create(self)\n File \"/usr/lib/python2.7/site-packages/imgcreate/fs.py\", line 308, in create\n device = losetupOutput.split()[0]\nIndexError: list index out of range\n* Converting to initrd\nUsage: livecd-iso-to-pxeboot <isopath>\n* Building tarball\nmv: cannot stat 'tftpboot/initrd0.img': No such file or directory\nmv: cannot stat 'tftpboot/vmlinuz0': No such file or directory\nsha256sum: initrd0.img: No such file or directory\nsha256sum: vmlinuz0: No such file or directory\n* Done\nThe microkernel is in /home/sarath/razor-el-mk-master/pkg/microkernel-.tar\nNot removing tmpdir /var/tmp/build-livecd-ytW8NK\n[root@33438de3a9b9 razor-el-mk-master]#", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11539", "fixedVersions": [], "id": "11539", "issueType": "Bug", "key": "RAZOR-1129", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c1281a9575800695acd02", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "while trying to build microkenel losetup: find unused loop device failed", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Microkernel"], "created": "2019-09-19T19:24:00.000000", "creator": "623c1281a9575800695acd02", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1903790e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:t"}], "description": "Hi ,\u00a0\n\nI have upgraded Razor from microkernel-008 to microkernel-009 as facts were not coming for the supermicro server.\u00a0\n\nTo upgrade I replaced the microkernel directory from /var/lib/tftpboot and also from the repo path.\u00a0\n\nAfter upgrade, we are facing the DHCP MAC issue .\n\nThe issue is DHCP is getting the UUID rather than the MAC for the IP address because of which we are getting same ip address for different MAC\u00a0\n\n\u00a0\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11062", "fixedVersions": [], "id": "11062", "issueType": "Bug", "key": "RAZOR-1128", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c1281a9575800695acd02", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "upgraded Razor microkernel-009 but facing DHCP MAC issue", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Tasks"], "created": "2019-09-17T12:16:00.000000", "creator": "5cf15f73de7db40fbf15ec7e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@995201a"}, {"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": "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|hyk3xw:s"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Oct/19"}], "description": "There is not currently a task in Razor 1.9.5 for RHEL 8 or CentOS 8 support.\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11060", "fixedVersions": [], "id": "11060", "issueType": "New Feature", "key": "RAZOR-1127", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5cf15f73de7db40fbf15ec7e", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support for RHEL 8 & CentOS 8", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2019-08-29T18:21:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4f97fa53"}, {"fieldName": "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 Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-3"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Release razor-client 1.9.5 (2019-08-29)"}, {"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": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "yellow"}, {"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|hzwq7j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4870064_*|*_6_*:*_1_*:*_0_*|*_10014_*:*_1_*:*_77489655"}], "description": "Razor Client 1.9.5 2019-08-29 Release", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11380", "fixedVersions": [], "id": "11380", "issueType": "Epic", "key": "RAZOR-1125", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-30T17:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Release razor-client 1.9.6 (2019-08-30)", "timeSpent": "PT0S", "updated": "2019-08-30T17:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7e7d20eb"}, {"fieldName": "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": "RAZOR-1125"}, {"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|hyk3xw:q"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2285_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_29128930"}], "description": "(Initial planned release date: 2019-08-29)\n\nUpdate winston to reflect any changes in the release process.", "duedate": "2019-08-29T00:00:00.000000", "epicLinkSummary": "Release razor-client 1.9.6 (2019-08-30)", "estimate": "PT0S", "externalId": "11718", "fixedVersions": [], "id": "11718", "issueType": "Task", "key": "RAZOR-1124", "labels": [], "originalEstimate": "PT0S", "parent": "11380", "parentSummary": "Release razor-client 1.9.6 (2019-08-30)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Duplicate", "resolutionDate": "2019-08-29T19:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update winston (Razor Client 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2865d401"}, {"fieldName": "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": "RAZOR-1125"}, {"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|hyk3xw:p"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2440_*|*_5_*:*_1_*:*_771835_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_29121943"}], "description": "(Initial planned release date: 2019-08-29)\n\nUpdate the [release google spreadsheet| https://docs.google.com/a/puppet.com/spreadsheets/d/1iwr_r-ZUfkWXXhjYWSrIRCsj-ySWaqGFPcmcUOt7Y3E/edit?usp=sharing] for razor-client 1.9.6.\n", "duedate": "2019-08-29T00:00:00.000000", "epicLinkSummary": "Release razor-client 1.9.6 (2019-08-30)", "estimate": "PT0S", "externalId": "11682", "fixedVersions": [], "id": "11682", "issueType": "Task", "key": "RAZOR-1123", "labels": [], "originalEstimate": "PT0S", "parent": "11380", "parentSummary": "Release razor-client 1.9.6 (2019-08-30)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-29T19:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update the release spreadsheet (Razor Client 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@167e6784"}, {"fieldName": "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": "RAZOR-1125"}, {"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|hyk3xw:o"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2613_*|*_5_*:*_1_*:*_781023_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_29120344"}], "description": "(Initial planned release date: 2019-08-29)\n\nOnce a release candidate has been determined, tag (using kerminator in the \\#release-new-new room):\n{{! tag razor-client 1.9.6 at <sha> with \"1.9.6\"}}\nThis will trigger a GitHub Action to build and ship the razor-client gem.\n", "duedate": "2019-08-29T00:00:00.000000", "epicLinkSummary": "Release razor-client 1.9.6 (2019-08-30)", "estimate": "PT0S", "externalId": "11533", "fixedVersions": [], "id": "11533", "issueType": "Task", "key": "RAZOR-1122", "labels": [], "originalEstimate": "PT0S", "parent": "11380", "parentSummary": "Release razor-client 1.9.6 (2019-08-30)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-29T19:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag, build, and publish gem (Razor Client 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1639646d"}, {"fieldName": "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": "RAZOR-1125"}, {"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|hyk3xw:n"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2391_*|*_5_*:*_1_*:*_787789_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_29120319"}], "description": "(Initial planned release date: 2019-08-29)\n\nEnsure NEWS.md contains all relevant changes for this release.\n", "duedate": "2019-08-28T00:00:00.000000", "epicLinkSummary": "Release razor-client 1.9.6 (2019-08-30)", "estimate": "PT0S", "externalId": "11379", "fixedVersions": [], "id": "11379", "issueType": "Task", "key": "RAZOR-1121", "labels": [], "originalEstimate": "PT0S", "parent": "11380", "parentSummary": "Release razor-client 1.9.6 (2019-08-30)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-29T19:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update changelog (Razor Client 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7a933501"}, {"fieldName": "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": "RAZOR-1115"}, {"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|hyk3xw:m"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2421_*|*_3_*:*_1_*:*_2185077_*|*_5_*:*_1_*:*_34618_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_27694974"}], "description": "(Initial planned release date: 2019-08-29)\n\nUpdate winston to reflect any changes in the release process.", "duedate": "2019-08-29T00:00:00.000000", "epicLinkSummary": "Release razor-server 1.9.6 (2019-08-29)", "estimate": "PT0S", "externalId": "11301", "fixedVersions": [], "id": "11301", "issueType": "Task", "key": "RAZOR-1120", "labels": [], "originalEstimate": "PT0S", "parent": "11695", "parentSummary": "Release razor-server 1.9.6 (2019-08-29)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-29T19:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update winston (Razor Server 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@218f62d3"}, {"fieldName": "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": "RAZOR-1115"}, {"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|hyk3xw:l"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2522_*|*_5_*:*_1_*:*_2233821_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_27687500"}], "description": "(Initial planned release date: 2019-08-29)\n\nUpdate the [release google spreadsheet| https://docs.google.com/a/puppet.com/spreadsheets/d/1iwr_r-ZUfkWXXhjYWSrIRCsj-ySWaqGFPcmcUOt7Y3E/edit?usp=sharing] for razor-server 1.9.6.\n", "duedate": "2019-08-29T00:00:00.000000", "epicLinkSummary": "Release razor-server 1.9.6 (2019-08-29)", "estimate": "PT0S", "externalId": "11167", "fixedVersions": [], "id": "11167", "issueType": "Task", "key": "RAZOR-1119", "labels": [], "originalEstimate": "PT0S", "parent": "11695", "parentSummary": "Release razor-server 1.9.6 (2019-08-29)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-29T19:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update the release spreadsheet (Razor Server 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@185caaa0"}, {"fieldName": "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": "RAZOR-1115"}, {"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|hyk3xw:k"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2347_*|*_5_*:*_1_*:*_2290293_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_27635785"}], "description": "(Initial planned release date: 2019-08-29)\n\nRun the [razor-server shipping pipeline|https://jenkins-master-prod-1.delivery.puppetlabs.net/job/platform_ship-razor-server_stage-foss-artifacts-all-repos/]. Set REF to 1.9.6. If you encounter any issues, ping the on-call person in the \\#release-new-new Slack channel.", "duedate": "2019-08-29T00:00:00.000000", "epicLinkSummary": "Release razor-server 1.9.6 (2019-08-29)", "estimate": "PT0S", "externalId": "10972", "fixedVersions": [], "id": "10972", "issueType": "Task", "key": "RAZOR-1118", "labels": [], "originalEstimate": "PT0S", "parent": "11695", "parentSummary": "Release razor-server 1.9.6 (2019-08-29)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-29T19:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Publish release artifacts (Razor Server 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:34:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ac69779"}, {"fieldName": "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": "RAZOR-1115"}, {"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|hyk3xw:j"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4049_*|*_5_*:*_1_*:*_2579202_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_27353954"}], "description": "(Initial planned release date: 2019-08-29)\n\nOnce a release candidate has been promoted to PE and testing has gone smoothly, tag (using kerminator in the \\#release-new-new room) and build.\n* ! tag razor-server 1.9.6 at <sha> with \"1.9.6\"\n* Bump the razor-server ref in razor-vanagon to 1.9.6\n* ! tag razor-vanagon 1.9.6.0 at <sha> with \"1.9.6.0\"\n* Build razor-server (debian-8-amd64 el-6-x86_64 el-7-x86_64 ubuntu-14.04-amd64 ubuntu-16.04-amd64) and pe-razor-server (el-6-x86_64 el-7-x86_64) (using the [Dynamic Vanagon Builder|http://jenkins-release.delivery.puppetlabs.net/job/vanagon_generic_job/] with REPO set to `git@github.com:puppetlabs/razor-vanagon.git` until pipelines are set up)\n* Promote pe-razor-server 1.9.6.0 into all appropriate PE streams (using the [Package Promotion Job|http://jenkins-compose.delivery.puppetlabs.net/view/Promotion/job/Package-Promotion/] until pipelines are set up)\n", "duedate": "2019-08-28T00:00:00.000000", "epicLinkSummary": "Release razor-server 1.9.6 (2019-08-29)", "estimate": "PT0S", "externalId": "11925", "fixedVersions": [], "id": "11925", "issueType": "Task", "key": "RAZOR-1117", "labels": [], "originalEstimate": "PT0S", "parent": "11695", "parentSummary": "Release razor-server 1.9.6 (2019-08-29)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-29T19:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag and build release artifacts (Razor Server 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:34:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c3ae46e"}, {"fieldName": "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": "RAZOR-1115"}, {"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|hyk3xw:i"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2773_*|*_5_*:*_1_*:*_5390208_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_24550504"}], "description": "(Initial planned release date: 2019-08-29)\n\nEnsure NEWS.md contains all relevant changes for this release.\n", "duedate": "2019-08-28T00:00:00.000000", "epicLinkSummary": "Release razor-server 1.9.6 (2019-08-29)", "estimate": "PT0S", "externalId": "11807", "fixedVersions": [], "id": "11807", "issueType": "Task", "key": "RAZOR-1116", "labels": [], "originalEstimate": "PT0S", "parent": "11695", "parentSummary": "Release razor-server 1.9.6 (2019-08-29)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-29T18:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update changelog (Razor Server 1.9.6)", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2019-08-29T11:34:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4f84231c"}, {"fieldName": "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 Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-4"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Release razor-server 1.9.6 (2019-08-29)"}, {"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": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "dark_blue"}, {"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|hzwpnb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_27729841_*|*_6_*:*_1_*:*_0_*|*_10013_*:*_1_*:*_3652_*|*_10014_*:*_1_*:*_78996389"}], "description": "Razor Server 1.9.6 2019-08-29 Release\n", "duedate": "2019-08-29T00:00:00.000000", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11695", "fixedVersions": [], "id": "11695", "issueType": "Epic", "key": "RAZOR-1115", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-08-30T17:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Release razor-server 1.9.6 (2019-08-29)", "timeSpent": "PT0S", "updated": "2019-08-30T17:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/86.", "created": "2019-08-27T17:09:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Merged to razor-client#master at https://github.com/puppetlabs/razor-client/commit/81c2a6993cd264c32c25dafd7871f065c6bfc700", "created": "2019-08-28T12:21:00.000000"}], "components": ["Client"], "created": "2019-08-27T16:58:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@555d86e4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzwnpb:"}, {"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": "28/Aug/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_104151472_*|*_1_*:*_1_*:*_130266_*|*_10007_*:*_1_*:*_69131797_*|*_3_*:*_1_*:*_533790_*|*_5_*:*_1_*:*_7756982_*|*_6_*:*_1_*:*_0"}], "description": "Given this example:\n\n{code}\nrazor create-policy ... --enabled --hostname 'host${id}.com' ...\n{code}\n\nRazor 1.9.4 is thinking {{\\--hostname}} is the value for {{\\--enabled}}, and {{'host${id}.com'}} is then treated as a positional argument.\n\n*In Scope*\n* The value for boolean-typed arguments must be one of:\n  ** blank/nil \u2014\u00a0evaluates to \"true\"\n  ** \"true\"\n  ** \"false\"\n* Any boolean value matching \"\\-[a-z]...\" or \"\\--[a-z]...\" should be counted as the next argument.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10970", "fixedVersions": ["razor-client 1.9.5"], "id": "10970", "issueType": "Improvement", "key": "RAZOR-1114", "labels": ["regression"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2019-08-29T17:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client not handling empty boolean arguments", "timeSpent": "PT0S", "updated": "2019-08-29T19:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed via https://github.com/puppetlabs/razor-client/pull/85.", "created": "2019-08-23T15:52:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is mostly a transparent change, which allows us to do another release. We do need a PE docs update (in every version of PE) for this ticket:\n\nhttps://puppet.com/docs/pe/2019.1/installing_razor.html#install-razor-server\n\nStep 7 should replace `rest-client` with `faraday` version 0.15.4.\n`razor-client` should update to 1.9.4 once it is released.\n\nIf we're making changes there already, the \"Copy the <<Razor microkernel>>\" URL should be updated to always point to the latest version: https://pup.pt/razor-microkernel-latest. This may need changes elsewhere in our docs.", "created": "2019-08-24T20:45:00.000000"}, {"author": "70121:4084c786-3448-4ef8-8889-3c056e90bb64", "body": "I updated the URL to point to\u00a0[https://pup.pt/razor-microkernel-latest]\u00a0and updated the code block in all versions of PE to reflect the following changes:\n * razor-client --version 1.8.1 > razor-client --version {color:#FF0000}1.9.4{color}\n * rest-client --version 1.6.9 > {color:#FF0000}faraday{color} --version {color:#FF0000}0.15.4.{color}", "created": "2019-08-26T11:54:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Released in razor-client 1.9.4.", "created": "2019-08-27T00:56:00.000000"}], "components": ["Client"], "created": "2019-08-21T13:57:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4ffd24f3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzwj33:"}, {"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": "26/Aug/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_291803870_*|*_1_*:*_1_*:*_5953_*|*_3_*:*_1_*:*_179720669_*|*_5_*:*_1_*:*_22332_*|*_6_*:*_1_*:*_0"}], "description": "{{rest-client}} version 2.x is causing native extensions to be built (essentially a dependency on g++) due to a dependency trail:\n\nrest-client => http-cookie => domain_name => unf => unf_ext\n\nSince we want razor-client to be lightweight, and our usage of rest-client is minimal, we should swap rest-client out with a better-supported solution.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11299", "fixedVersions": ["RAZOR Out-Of-Band"], "id": "11299", "issueType": "Improvement", "key": "RAZOR-1112", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2019-08-27T00:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Replace rest-client dependency in razor-client", "timeSpent": "PT0S", "updated": "2019-08-27T00:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Looks like a documented bug: https://groups.google.com/forum/#!topic/linux.debian.bugs.dist/5GC4qko61Is\n\nWe may be able to stop building on debian 8, but would prefer a fix instead.", "created": "2019-08-23T12:06:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "PR to temporarily disable debian 8: https://github.com/puppetlabs/ci-job-configs/pull/6223", "created": "2019-08-23T12:32:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Marking this as blocked, though it appears to be an external blockage per the Debian thread in above comment.", "created": "2019-08-23T12:35:00.000000"}], "components": ["CI"], "created": "2019-08-16T17:36:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "CI Pipeline/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "platform legacy razor"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@639a2654"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:h"}], "description": "An error is cropping up in Debian 8. It appears to be related to the JDK + JRuby, specifically jopenssl. Stack trace below.\n\nOne idea is to use a later version of the JDK that we use in Debian 8.\n\n{noformat}\n16:16:48 LoadError: load error: jopenssl/load -- java.lang.NoClassDefFoundError: sun/security/ec/ECParameters\n16:16:48                   require at org/jruby/RubyKernel.java:956\n16:16:48                   require at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55\n16:16:48                    <main> at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/openssl.rb:1\n16:16:48                   require at org/jruby/RubyKernel.java:956\n16:16:48                   require at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55\n16:16:48                    <main> at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/security.rb:1\n16:16:48                   require at org/jruby/RubyKernel.java:956\n16:16:48                   require at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55\n16:16:48                    <main> at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/security.rb:12\n16:16:48                   require at org/jruby/RubyKernel.java:956\n16:16:48                   require at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55\n16:16:48                    <main> at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/package.rb:1\n16:16:48                   require at org/jruby/RubyKernel.java:956\n16:16:48                   require at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:55\n16:16:48                    <main> at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/package.rb:44\n16:16:48                    (root) at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/dependency_installer.rb:1\n16:16:48                    (root) at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/stdlib/rubygems/dependency_installer.rb:4\n16:16:48                    (root) at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/installer.rb:1\n16:16:48                    (root) at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/installer.rb:3\n16:16:48                    (root) at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/cli/install.rb:1\n16:16:48                       run at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/cli/install.rb:71\n16:16:48                   install at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/cli.rb:189\n16:16:48                       run at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/vendor/thor/lib/thor/command.rb:27\n16:16:48   block in invoke_command at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/vendor/thor/lib/thor/invocation.rb:126\n16:16:48                  dispatch at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/vendor/thor/lib/thor.rb:359\n16:16:48                    <main> at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/gems/shared/gems/bundler-1.13.1/lib/bundler/cli.rb:20\n16:16:48                      load at org/jruby/RubyKernel.java:974\n16:16:48                    <main> at /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/bin/bundle:22\n16:16:49 Makefile:62: recipe for target 'razor-server-configure' failed\n16:16:49 make: *** [razor-server-configure] Error 1\n16:16:49 Remote ssh command ((cd /var/tmp/tmp.9jIENhoolB; /usr/bin/make )) failed on 'root@wbkdugf584xythf.delivery.puppetlabs.net'.\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/lib/vanagon/utilities.rb:226:in `remote_ssh_command'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/lib/vanagon/engine/base.rb:35:in `dispatch'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/lib/vanagon/driver.rb:145:in `run'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/bin/build:28:in `block in <top (required)>'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/bin/build:25:in `each'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/bin/build:25:in `<top (required)>'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/bin/build:23:in `load'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/bin/build:23:in `<main>'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/bin/ruby_executable_hooks:24:in `eval'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/bin/ruby_executable_hooks:24:in `<main>'\n16:16:49 /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/lib/vanagon/utilities.rb:226:in `remote_ssh_command': Remote ssh command ((cd /var/tmp/tmp.9jIENhoolB; /usr/bin/make )) failed on 'root@wbkdugf584xythf.delivery.puppetlabs.net'. (RuntimeError)\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/lib/vanagon/engine/base.rb:35:in `dispatch'\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/lib/vanagon/driver.rb:145:in `run'\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/bin/build:28:in `block in <top (required)>'\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/bin/build:25:in `each'\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/gems/vanagon-0.15.25/bin/build:25:in `<top (required)>'\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/bin/build:23:in `load'\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/bin/build:23:in `<main>'\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/bin/ruby_executable_hooks:24:in `eval'\n16:16:49 \tfrom /tmp/jenkins/workspace/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET/debian-8-amd64/SLAVE_LABEL/worker/razor-vanagon/.bundle/gems/ruby/2.4.0/bin/ruby_executable_hooks:24:in `<main>'\n16:16:59 Process leaked file descriptors. See https://jenkins.io/redirect/troubleshooting/process-leaked-file-descriptors for more information\n16:16:59 Build step 'Execute shell' marked build as failure\n{noformat}\n\nLink: https://cinext-jenkinsmaster-enterprise-prod-1.delivery.puppetlabs.net/job/platform_razor-suite_vanagon-packaging_foss_suite_master/BUILD_TARGET=debian-8-amd64,SLAVE_LABEL=worker/15/console", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11693", "fixedVersions": [], "id": "11693", "issueType": "CI Blocker", "key": "RAZOR-1113", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor CI issue in Debian 8 (sun/security/ec/ECParameters)", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/83.", "created": "2019-08-16T14:49:00.000000"}], "components": ["Client"], "created": "2019-08-16T14:45:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@78432ce5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzwgjb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7289_*|*_10007_*:*_1_*:*_9771974_*|*_5_*:*_1_*:*_8082_*|*_6_*:*_1_*:*_0"}], "description": "We have some dependency issues in razor-client involving the {{unf}} gem:\n1. If we use 0.1.4, the latest released version, native extensions need to be installed. This requires {{gcc}} on Ubuntu, and both {{gcc}} and {{gcc-c++}} on Centos, to be installed. 1.9.1 and prior both require this.\n2. If we use 0.2.0.beta2, a prerelease version, the install happens without native extensions. However, the {{gem install}} command needs the {{--pre}} flag.\nThe Gemfile cannot say \">= 0.1.4\" and still pick up the prerelease gem, so we must choose a path. There's a third option:\n3. We fork and release the 0.2.0.beta2 gem as a full version.\n\n1.9.1, the last version of razor-client, did option 1, so we will stick with that.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11297", "fixedVersions": ["RAZOR 1.9.3"], "id": "11297", "issueType": "Improvement", "key": "RAZOR-1111", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2019-08-16T17:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "`unf` dependency issue in Razor client gem", "timeSpent": "PT0S", "updated": "2019-08-16T17:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/430.", "created": "2019-07-09T17:43:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "As a follow-up before this is marked Resolved, this ticket needs FOSS and PE documentation updates. /cc [~accountid:557058:3bbf1c83-df0e-4372-887d-cfc38dee9330]", "created": "2019-07-09T17:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Also tracked by: https://github.com/puppetlabs/razor-server/pull/432", "created": "2019-07-10T12:59:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], when you have a chance, please update the release notes and fix version for this issue. Thanks!", "created": "2019-07-18T16:49:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Release notes updated.", "created": "2019-07-19T11:23:00.000000"}], "components": ["DOCS", "Server"], "created": "2019-07-09T17:22:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@37cdf86d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzvm73:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Enhancement"}, {"fieldName": "Release Notes Summary", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "The `\"fact\"` and `\"metadata\"` tag matchers now allow dot-notation for scoping into structured facts and metadata. Arrays can also use `\"<array>.length\"` to get the length of an array."}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Jul/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_712742098_*|*_1_*:*_1_*:*_11751_*|*_10007_*:*_1_*:*_62826898_*|*_3_*:*_1_*:*_1207325_*|*_5_*:*_1_*:*_3571356606_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_65641238"}], "description": "We should allow a basic method to access data inside structured facts. This will enable us to use later versions of Facter.\n\n*In Scope*\n* Update the {{\"fact\"}} and {{\"metadata\"}} matchers to allow {{.}} inside a tag rule.\n* Using {{.}} inside a tag rule allows basic scoping into facts: For hashes, it will look up the next key. For arrays, it will look up that index. For arrays, we will also allow a special {{.length}}, which will return the length of the array.\n* The tag's third argument will still return the default value if any of the scoping fails.\n\n*Out of Scope*\n* Running operations on structured data, e.g. {{in}} or {{empty}} (See RAZOR-641)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11806", "fixedVersions": ["razor-server 1.9.6"], "id": "11806", "issueType": "Improvement", "key": "RAZOR-1110", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2019-07-19T11:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow access to structured facts and metadata", "timeSpent": "PT0S", "updated": "2019-08-29T19:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by:\n- https://github.com/puppetlabs/razor-el-mk/pull/35\n- https://github.com/puppetlabs/razor-el-mk/pull/36\n- https://github.com/puppetlabs/razor-el-mk/pull/37", "created": "2019-07-03T19:08:00.000000"}], "components": ["Microkernel"], "created": "2019-07-01T14:00:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f39f265"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzurtj:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Not Needed"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_78002592_*|*_1_*:*_1_*:*_5902_*|*_10007_*:*_1_*:*_588557574_*|*_3_*:*_1_*:*_191304632_*|*_6_*:*_1_*:*_0"}], "description": "Per [a mailing list thread|https://groups.google.com/forum/#!msg/puppet-razor/NyAreTCx0qA/-8q-_kifDQAJ], we should update the version of CentOS that our microkernel is built on. Currently that version is 7.6.1810.\n\n*In Scope*\n * Generate new microkernel from the latest build of CentOS.\n * Update the pup.pt/razor-microkernel-latest link to point to this microkernel.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11805", "fixedVersions": [], "id": "11805", "issueType": "Improvement", "key": "RAZOR-1109", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2019-07-11T12:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Rebase microkernel to latest CentOS", "timeSpent": "PT0S", "updated": "2019-07-11T12:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Not sure if it should be potentially in-scope here, but per [https://wiki.debian.org/DebianBuster], it looks like Buster (v10) will be \"released\" in a few weeks", "created": "2019-06-12T11:03:00.000000"}], "components": ["Tasks"], "created": "2019-05-31T17:52:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@71bd3c3c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:g"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Jun/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1013785251_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_14984300572"}], "description": "Debian's default (and only) task is for Debian Wheezy (v7). We should add tasks for Jessie (v8) and Stretch (v9).\n\nUse info from\u00a0RAZOR-1107 to ensure the broker works for v9 (and perhaps v8).", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11804", "fixedVersions": [], "id": "11804", "issueType": "Improvement", "key": "RAZOR-1108", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Duplicate", "resolutionDate": "2019-12-02T20:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create task for Debian 8 and 9", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "5e8b2ab4f135980b7bcd645e", "created": "2019-06-01T14:29:00.000000", "name": "Puppet_Broker2.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10194"}, {"attacher": "5e8b2ab4f135980b7bcd645e", "created": "2019-06-01T14:29:00.000000", "name": "Puppet_Broker3.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10206"}, {"attacher": "5e8b2ab4f135980b7bcd645e", "created": "2019-05-31T19:11:00.000000", "name": "razor.log", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10175"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hi Vijay", "created": "2019-05-31T17:41:00.000000"}, {"author": "5e8b2ab4f135980b7bcd645e", "body": "Hi Scott,\u00a0\n\nThere's a possibly two minor issues\n\na) /etc/rc.local doesn't execute /usr/local/bin/razor_postinstall.sh because rc.local service fails to launch with the error\n\nFailed at step EXEC spawning /etc/rc.d/rc.local: Exec format error. Have attached screenshot for your reference.\n\nThe solution to this is write #!/bin/bash at the start as per\u00a0[https://www.micorthinker.com/2018/03/173/]\n\na) Minor issue in the install.erp. Here is the razor.log of the system. It fails to start the puppet service as /etc/init.d/puppet is not found.\n\nReopening the issue.[^razor.log]\n\n\u00a0Maybe we can fix it by setting instead of /etc/init.d/puppet start\n\nservice puppet start\u00a0\u00a0\n\nsystemctl enable puppet\u00a0\n\nsystemctl start puppet\n\n\u00a0\n\nKind Regards,\n\nVijay", "created": "2019-05-31T19:13:00.000000"}, {"author": "5e8b2ab4f135980b7bcd645e", "body": "!Puppet_Broker2.png!", "created": "2019-06-01T14:29:00.000000"}, {"author": "5e8b2ab4f135980b7bcd645e", "body": "!Puppet_Broker3.png|thumbnail!", "created": "2019-06-01T14:29:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:5e8b2ab4f135980b7bcd645e] Which version of Debian is this attempting to install? If it is Debian 8 or 9, this detail will be very useful for the linked ticket (RAZOR-1108) to create tasks for those OS versions. If it is for Debian 7, this is indeed a bug and we will track it here.", "created": "2019-06-12T11:52:00.000000"}, {"author": "5e8b2ab4f135980b7bcd645e", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Debian 9", "created": "2019-06-12T11:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing, we will do this work as a part of RAZOR-1108. I have linked this ticket in the description of that one. Thank you [~accountid:5e8b2ab4f135980b7bcd645e] for the info! That will certainly save time in getting this patched for Debian 9.", "created": "2019-06-12T12:14:00.000000"}], "components": [], "created": "2019-05-31T17:34:00.000000", "creator": "5e8b2ab4f135980b7bcd645e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@150dec2d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzuwt3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/May/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_1010728421_*|*_6_*:*_2_*:*_5538192_*|*_10004_*:*_1_*:*_1318956"}], "description": "o/ Thank for your support. While installing debian, how do we verify that the broker handover has happened?\n\na) Did created a broker by (razor create-broker --name=puppet -c server=puppet -c environment=production --broker-type puppet)\n\nb) Assigned the policy with broker puppet.\u00a0\n\nHow do we confirm that broker-handover has happened? I was expecting that puppet agent would be installed on the new machine and on performing \"puppetserver ca list\" there would be already a request for the CA signing? None was present? Also, How do we see the log for that?\n\nThanks again for the support :)\n\n\u00a0\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11676", "fixedVersions": [], "id": "11676", "issueType": "Bug", "key": "RAZOR-1107", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5e8b2ab4f135980b7bcd645e", "resolution": "Duplicate", "resolutionDate": "2019-06-12T12:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Broker Handover | Razor", "timeSpent": "PT0S", "updated": "2019-06-12T12:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The `debian` installer is currently for Wheezy. I've created RAZOR-1108 to update our default task in the Debian space.\n\nIn general, our default task (e.g. `debian`, `ubuntu`, `redhat`) should work for the latest version of the OS. For backwards compatibility, we will use subdirectories: (`debian/wheezy` or `debian/7`, TBD).", "created": "2019-05-31T17:55:00.000000"}], "components": [], "created": "2019-05-31T17:26:00.000000", "creator": "5e8b2ab4f135980b7bcd645e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@47a9badc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzuwsv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/May/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1785542_*|*_6_*:*_1_*:*_0"}], "description": "Hello o/ Thank you for the continuous support and the amazing work. On trying to install Debian Stretch 9.9 by razor, CD-ROM error is encountered.\n\n\u00a0\n\nOn Installing Debian Stretch from PXE; No Common CD-ROM drive was selected error is occurring. The same screenshot which is attached with RAZOR-548. The only way to install debian is to attach the CD-Rom with the ISO file and then boot with PXE.\u00a0\n\nSteps to recreate:\u00a0\n # Create a Debian Repo (razor create-repo --name=debian-9.9 --iso-url=[http://192.168.1.51:8000/debian-9.8.0-amd64-DVD-1.iso] --task debian)\n # And assign a policy/ VM to boot from the Debian Repo", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11531", "fixedVersions": [], "id": "11531", "issueType": "Bug", "key": "RAZOR-1106", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5e8b2ab4f135980b7bcd645e", "resolution": "Duplicate", "resolutionDate": "2019-05-31T17:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Problem provisioning debian Stretch with razor | Similar to  [RAZOR-548]", "timeSpent": "PT0S", "updated": "2019-05-31T17:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2019-05-31T16:27:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6c7e67fc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:f"}], "description": "We currently only ship razor-server on Debian for version 8. Now that version 9 has been out, we should include the package there.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11166", "fixedVersions": [], "id": "11166", "issueType": "Improvement", "key": "RAZOR-1105", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ship razor-server on Debian Stretch", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hi Vijay! I just noticed we are not shipping razor-server for Debian Stretch (v9). I've created a ticket\u00a0to have it added, but this would explain why you aren't finding the package there. Thanks for filing this", "created": "2019-05-31T16:29:00.000000"}], "components": [], "created": "2019-05-26T12:21:00.000000", "creator": "5e8b2ab4f135980b7bcd645e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@35d3cbe"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzusuf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/May/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_258439792_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_188495706"}], "description": "o/ Hello Everyone; I am trying to install razor-server for a lab environment. Have install puppet server 6.4.2 (open-source) and following the installation steps mentioned at\u00a0[https://github.com/puppetlabs/razor-server/wiki/Installation#installing-packages]\u00a0. After installing\u00a0puppetlabs-release-pc1-strech.deb and performing apt-get update; the system is still unable to find razor-server? Does this work?\n\nI would be grateful if someone could point me in correct direction? The puppetlabs-razor\u00a0 [https://github.com/puppetlabs/puppetlabs-razor]\u00a0module is also not working as expected?\u00a0\n\nThanks for your support", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11688", "fixedVersions": [], "id": "11688", "issueType": "Bug", "key": "RAZOR-1104", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5e8b2ab4f135980b7bcd645e", "resolution": "Duplicate", "resolutionDate": "2019-05-31T16:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Unable to locate package razor-server after adding puppetlabs-release-pc1-strech.deb", "timeSpent": "PT0S", "updated": "2019-05-31T16:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Thank you for reporting this [~accountid:623d013dbef8a60068c82718]! We believe this issue has already been reported in another ticket. Please see the linked duplicate issue. \n", "created": "2019-05-13T17:20:00.000000"}], "components": ["Tasks"], "created": "2019-04-28T18:11:00.000000", "creator": "623d013dbef8a60068c82718", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4ac545fb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzua5r:"}, {"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/May/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1274110506_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_18817097"}], "description": "It appears that the latest installer for Ubuntu is Ubuntu 16.04 - Xenial.\u00a0 Ubuntu 18.04 LTS Bionic Beaver has been available for a year now.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11685", "fixedVersions": [], "id": "11685", "issueType": "New Feature", "key": "RAZOR-1103", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623d013dbef8a60068c82718", "resolution": "Duplicate", "resolutionDate": "2019-05-13T17:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add razor-server task for Ubuntu 18.04 LTS - Bionic Beaver", "timeSpent": "PT0S", "updated": "2019-05-13T17:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Tasks"], "created": "2019-04-10T14:49:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7a381815"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hztyhj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7863_*|*_6_*:*_1_*:*_0"}], "description": "The kickstart fails when the password contains a space.\n\nTracked/merged by\u00a0[https://github.com/puppetlabs/razor-server/pull/426].", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11294", "fixedVersions": [], "id": "11294", "issueType": "Improvement", "key": "RAZOR-1102", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2019-04-10T14:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow spaces in kickstart/preseed passwords", "timeSpent": "PT0S", "updated": "2019-04-10T14:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Setting this aside in favor of Torquebox replacement efforts.", "created": "2019-12-02T20:27:00.000000"}], "components": ["Server"], "created": "2019-03-19T11:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6401cd65"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:e"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1911972662_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_20415441141"}], "description": "`torquebox` 3.2.0 depends on `torquebox-core` 3.2.0, which depends on `edn` 1.0.0. Later versions of jruby (somewhere between 9.1.9.0 and 9.2.6.0) cause issues with this version of the EDN library.\n\nIf we are to use a later version of jruby, we should update the version of EDN bundled with torquebox. This likely means forking torquebox.\n\nOptional but probably out of scope: Update this forked torquebox to use a later version of jruby.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11802", "fixedVersions": [], "id": "11802", "issueType": "Improvement", "key": "RAZOR-1101", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Do", "resolutionDate": "2019-12-02T20:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Torquebox EDN dependency limits jruby version", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:adac4e58-01ac-4fce-8be9-94131c26c73d", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this ticket until we have a reason to reopen.", "created": "2019-12-03T14:17:00.000000"}, {"author": "557058:a1934fbf-2a74-46f4-a302-1419213a1c67", "body": "I am sure that this is still an ask from the customer (Mentor Graphics), but we have not done any active work around this need. The customer has not made it a higher priority, but they will still ask about it and see if we will add it. Until we get word from them then it is likely safe to close for now.\n\nthanks\n\nFrom: \"Scott McClellan (JIRA)\" <issue-updates+ScottMcClellan@puppet.com>\nDate: Tuesday, December 3, 2019 at 1:18 PM\nTo: \"tommy@puppet.com\" <tommy@puppet.com>\nSubject: Jira (RAZOR-1100) Add ARM64 OS Support\n\n[cid:jira-generated-image-avatar-91f86743-5de3-4d55-ab13-0af1a3a16f42]\nScott McClellan<https://puppet.atlassian.net/secure/ViewProfile.jspa?name=scott.mcclellan> updated [Improvement] RAZOR-1100<https://puppet.atlassian.net/browse/RAZOR-1100>\n\n\nClosing this ticket until we have a reason to reopen.\nRazor<https://puppet.atlassian.net/browse/RAZOR> / [Improvement] <https://puppet.atlassian.net/browse/RAZOR-1100> RAZOR-1100<https://puppet.atlassian.net/browse/RAZOR-1100>\nAdd ARM64 OS Support <https://puppet.atlassian.net/browse/RAZOR-1100>\nChange By:\nScott McClellan<https://puppet.atlassian.net/secure/ViewProfile.jspa?name=scott.mcclellan>\nResolution:\nWon't Fix\nStatus:\nAccepted Closed\n[Add Comment]<https://puppet.atlassian.net/browse/RAZOR-1100#add-comment>\nAdd Comment<https://puppet.atlassian.net/browse/RAZOR-1100#add-comment>\n\nThis message was sent by Atlassian JIRA (v7.7.1#77002-sha1:e75ca93)\n[Atlassian logo]\n", "created": "2019-12-03T16:55:00.000000"}], "components": [], "created": "2019-03-11T12:52:00.000000", "creator": "557058:a1934fbf-2a74-46f4-a302-1419213a1c67", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c1b1834"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:d"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_945995410_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_22131472841"}], "description": "Customer is requesting this enhancement to Razor.\n\nThe customer is looking for support of ARM64 OS microkernel provisioning\n\n\u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11924", "fixedVersions": [], "id": "11924", "issueType": "Improvement", "key": "RAZOR-1100", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a1934fbf-2a74-46f4-a302-1419213a1c67", "resolution": "Won't Fix", "resolutionDate": "2019-12-03T14:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add ARM64 OS Support ", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [{"attacher": "5b923e606d3a2a2be1b19fcf", "created": "2019-02-27T03:55:00.000000", "name": "razor.PNG", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10174"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:5b923e606d3a2a2be1b19fcf] Does this also happen when using the Standard version? I have not tested installation of the Essentials version, so that is not supported as far as I am aware.", "created": "2019-03-22T11:42:00.000000"}, {"author": "5b923e606d3a2a2be1b19fcf", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] apologize for late reply . I have tired once again after you response received . Exactly , you are right ! , previously I was tried same Windows 2016 standard version not worked , But tried again now its worked . \n\nThanks [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]   ", "created": "2019-04-29T03:45:00.000000"}], "components": ["Tasks"], "created": "2019-02-27T03:56:00.000000", "creator": "5b923e606d3a2a2be1b19fcf", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a30f1b1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hztgnz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Mar/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2011563249_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_3282100860"}], "description": "Hi ,\n\n\u00a0 \u00a0 I can able to provisioning the windows 2012 r2 . But windows 2016 started provisioning , i can choose manually image type after that only installation to be begin . I could not find any way in that ,\n\n\u00a0\n\n\u00a0\n\n\u00a0 \u00a0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11292", "fixedVersions": ["RAZOR 1.9.3"], "id": "11292", "issueType": "Bug", "key": "RAZOR-1099", "labels": ["windows"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5b923e606d3a2a2be1b19fcf", "resolution": "Cannot Reproduce", "resolutionDate": "2019-04-29T11:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor windows 2016 Essentials and boot.win file has been created and moved to repo , when start provisioning , manually choose image type ", "timeSpent": "PT0S", "updated": "2019-04-29T11:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "We do not ship an air-gapped version of the open-source puppet broker. The Puppet Enterprise version, however, has instructions on how to work offline: [https://puppet.com/docs/pe/2019.0/installing_razor.html#ariaid-title4]\n\nI'm not sure what the exact [https://mirror.**.|https://mirror.%2A%2A./]\u00a0error is, but I would expect that broker to error out when it tries to reach our yum release here:\n\n- [https://github.com/puppetlabs/razor-server/blob/master/brokers/puppet.broker/install.erb#L62-L65]\n\nI will note that brokers, like all Razor objects, can be overridden as needed. Feel free to override the files within puppet.broker (e.g. the install.erb file we include) to work in an air-gapped scenario.\n\nI am closing this ticket for now, let me know if you have any questions or feel this should be reopened.", "created": "2019-02-21T01:17:00.000000"}, {"author": "5ada6b68626b42214cd22857", "body": "Thanks, I modified the install.erb to install agent using local rpm file.", "created": "2019-02-21T02:01:00.000000"}], "components": ["Tasks"], "created": "2019-02-14T05:23:00.000000", "creator": "5ada6b68626b42214cd22857", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@51bf4fa0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzssmf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Feb/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_590025399_*|*_6_*:*_1_*:*_0"}], "description": "I am using razor to provision centos, I have created a separate network with dhcp server, pxe server, tftp server, razor server and target machine. Centos is getting installed on target machine when node is discovered however broker is not getting installed. In my case broker is puppet. In /var/log/razor.log I see error as \"https://mirrors.** is not reachable\".\n\n\u00a0\n\nI\u00a0 understand this is happening because this network I have created does not have access to internet hence not able reach [https://mirror.**.|https://mirror.%2A%2A./]\u00a0\n\n\u00a0\n\nIs there anyway broker can be installed offline post to OS installation?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11683", "fixedVersions": [], "id": "11683", "issueType": "Improvement", "key": "RAZOR-1098", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5ada6b68626b42214cd22857", "resolution": "Won't Fix", "resolutionDate": "2019-02-21T01:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "broker installation is failing post to OS installation", "timeSpent": "PT0S", "updated": "2019-02-21T02:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "5b923e606d3a2a2be1b19fcf", "created": "2019-02-11T08:34:00.000000", "name": "razor.PNG", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10252"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hi [~accountid:5b923e606d3a2a2be1b19fcf], which version of Razor is this? And in PE or FOSS?", "created": "2019-02-11T14:51:00.000000"}, {"author": "5b923e606d3a2a2be1b19fcf", "body": "Hi [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] ,\n\nI have using\u00a0 Razor Server version: 1.9.3 ,\u00a0Razor Client version: 1.3.0 and using in PE . I could able to provisioning windows8 , but windows 2012 and windows 2016 can't able to provisioning .\u00a0", "created": "2019-02-11T22:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Perhaps worth noting, the stock task only works for 2012*R2*, so that might be a reason for failure if you're trying 2012. Are you using the stock `windows/2012r2` and `windows/2016` tasks?", "created": "2019-02-11T22:47:00.000000"}, {"author": "5b923e606d3a2a2be1b19fcf", "body": "Hi [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] ,\n\n\u00a0 I also tried windows 2012 r2 server different edition like standard and evaluation . Also tasks used windows/2012r2 and\u00a0windows/2016", "created": "2019-02-11T22:52:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hi [~accountid:5b923e606d3a2a2be1b19fcf],\n\nI just tested our stock 2012 R2 task using the 2012 R2 evaluation ISO available from Microsoft's page. After getting to the screen you described, I read up on the evaluation version, and the error. Apparently the error comes from an invalid license key (not very straightforward if you ask me). Digging deeper, the evaluation version includes its own license key, so the evaluation key we ship with in the unattended.xml is not needed. If you remove the <ProductKey> section from the unattended.xml.erb file (or rather, override what we ship in our stock windows/2012r2.task/unattended.xml.erb file with a file that removes that section), this should work for you.\n\nFor reference, here are the lines that should be removed from your overridden unattended.xml.erb file:\n - [https://github.com/puppetlabs/razor-server/blob/master/tasks/windows/2012r2.task/unattended.xml.erb#L60-L66]\n\nUsing a standard/retail ISO with a valid \"productkey\" node metadata (or just using the evaluation product key that we include) should work too.\n\nHope this helps! windows/2016 should be a similar situation.", "created": "2019-02-21T01:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I'm closing this ticket for now, let me know if this does not address your issue.", "created": "2019-02-21T01:07:00.000000"}, {"author": "5b923e606d3a2a2be1b19fcf", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Thank you so much\u00a0 . Now its worked\u00a0\n\n\u00a0", "created": "2019-02-21T04:30:00.000000"}], "components": [], "created": "2019-02-11T08:35:00.000000", "creator": "5b923e606d3a2a2be1b19fcf", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@127db336"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzsq4n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Feb/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_837068405_*|*_6_*:*_1_*:*_0"}], "description": "Hi ,\n\n\u00a0\n\n\u00a0I have try to provisioning windows 2012 and 2016 server , I have followed all the steps correctly , But setup start in client , i got error windows images not found .\n\nRef : https://puppet.com/docs/pe/2017.3/provisioning_a_windows_node.html\u00a0", "environment": "!razor.PNG!", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11671", "fixedVersions": ["RAZOR 1.9.3"], "id": "11671", "issueType": "Bug", "key": "RAZOR-1097", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5b923e606d3a2a2be1b19fcf", "resolution": "Cannot Reproduce", "resolutionDate": "2019-02-21T01:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor windows server provisioning , while setup is started to install , but there is no images found .", "timeSpent": "PT0S", "updated": "2019-02-21T04:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2018-12-18T00:22:00.000000", "creator": "557058:73641053-e19c-46a3-a060-6c9d43a6ed1a", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1d7b65da"}, {"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": "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|hzop47:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_133906198_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1637309339"}], "description": "_Basic Info_\n *Module Version:*\n *Puppet Version:2018.1.0*\n *OS Name/Version: RHEL 6.9*\n\n_Razor server is unable to detect some 10gb interfaces by default unless ixgbe_allow_unsupported_sfp module is passed into client machine microkernel. There is option for us to pass the kernel_args to pe_razor class, but it is not reflected in machine microkernel_\n\n*Desired Behavior:*\u00a0\n\nWhen we supply a kernel argument\u00a0_ixgbe.allow_unsupported_sfp=1_ to _pe_razor_ class, client machine should be able to detect 10gb interfaces.\n\n*Actual Behavior:*\n\nWhen we supply a kernel argument\u00a0_ixgbe.allow_unsupported_sfp=1_ to _pe_razor_ class, _*boot.erb*_ shows the kernel argument is successfully passed through (this can be queried with command\u00a0*_curl localhost:8150/svc/boot?net0=a:b:c:d_*__ However, the client machine micro kernel is not getting it.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11798", "fixedVersions": [], "id": "11798", "issueType": "Bug", "key": "RAZOR-1096", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:73641053-e19c-46a3-a060-6c9d43a6ed1a", "resolution": "Cannot Reproduce", "resolutionDate": "2019-01-07T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "pe-razor-server : unable to pass microkernel_kernel_args parameter to client machinbe", "timeSpent": "PT0S", "updated": "2019-01-15T03:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2018-11-14T14:59:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6cafc05d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzr6mf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1921370_*|*_10007_*:*_1_*:*_1025997717_*|*_5_*:*_1_*:*_16417911446_*|*_6_*:*_1_*:*_0"}], "description": "In order for UEFI to work on tasks that derive from the stock RHEL task, we need to add a `initrd=initrd.img` to the kernel arguments.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11280", "fixedVersions": ["RAZOR 1.9.4"], "id": "11280", "issueType": "Improvement", "key": "RAZOR-1095", "labels": ["rhel", "tasks"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-11-26T12:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow UEFI for RHEL variants", "timeSpent": "PT0S", "updated": "2019-06-04T14:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2018-11-02T16:21:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@15f0f752"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:c"}], "description": "Facilitate the execution of ad-hoc policies.\n\nUse cases:\n * Firmware upgrades (booting a firmware ISO)\n * Debugging & RAID updates (LiveDVD ISO)\n\n----\nh4. Possible approaches\n----\nAllow existing policies to be run ad-hoc, in addition to binding. Execution and order of which policy to run.\n * New commands\n ** `run-adhoc-policy [policy] [node]` and `run-adhoc-policy [policy]\u00a0\\-\\-tag/\\-\\-tags [tag/tags]`\n ** `remove-adhoc-policy [policy] [node]`\n ** `move-adhoc-policy [policy] [--before|--after] [other-policy]`\n ** Collection: `razor nodes node1 adhoc-policies`\n ** Display `adhoc-policies` in `razor nodes node1`\n * Database updates\n ** Add `nodes_policies_adhoc` table:\n *** Join `nodes` to `policies`\n *** Include a sequence (See `rule_number` from `policies` table).\n ** Add `adhoc_policy` and `adhoc_policy_boot_count` to `nodes`.\n * Data model updates\n ** Add `adhoc_policies` (List of Policy objects) to the `Node` class\n ** Add `adhoc_policy_boot_count` (Integer) to the `Node` class\n * Logic flow updates\n ** When a node boots, before checking for a policy template to feed the node, check for the `adhoc_policy` list.\n *** If there is an item in the list, serve the template that corresponds to the `adhoc_policy_boot_count` integer.\n **** If the `adhoc_policy` is in the `default` section (if any), or completed with all enumerated boot_seq values, remove the adhoc-policy from the node and reset the `adhoc_policy_boot_count` to 0.\n **** If the `adhoc_policy` has a template to serve, serve that and increment the adhoc_policy_boot_count`.\n *** If there is no item in the list, proceed to serve policy templates, microkernel templates, or boot locally as usual.\n\n----\nAd-hoc policies live separately from existing policies.\n\nTo be continued...\n----\nOther implementation ideas forthcoming...", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11052", "fixedVersions": [], "id": "11052", "issueType": "Story", "key": "RAZOR-1094", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow one-off policy execution", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:9ce6b29d-9993-418a-8b1b-4376b618ec97", "body": "Hi,\n\nPlease let me know if the issue is still open.\n\nwould like to work on this fix .", "created": "2020-07-21T20:35:00.000000"}], "components": ["API", "Server"], "created": "2018-10-30T22:22:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Running `razor remove-policy-node-metadata some_policy test` then `razor policies some_policy` will not include the key `test` in `node_metadata`.\u00a0"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ff6ceef"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:b"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jul/20"}], "description": "The `update-policy-node-metadata` command currently requires a\u00a0`value` argument, and there is no other way to remove the key for the `node_metadata` property from the policy.\n\nThis ticket is to add a `remove-policy-node-metadata` command, consistent with `remove-node-metadata`, which can remove a key from a policy's node metadata entirely.\n\nNOTE: The workaround for now is to assign the policy's node metadata to the value \"null\", but the key will still be present on the node.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11525", "fixedVersions": [], "id": "11525", "issueType": "Bug", "key": "RAZOR-1093", "labels": ["Easy", "pairing"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow deletion of node metadata on policy", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I've linked this ticket to RAZOR-1094, an Epic which will track the work on this ticket.", "created": "2018-11-02T18:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "See attached ticket for work on this.", "created": "2018-11-08T12:28:00.000000"}], "components": ["Server"], "created": "2018-10-08T11:19:00.000000", "creator": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@79f5b1a3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzqd7r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Nov/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_608244137_*|*_10009_*:*_1_*:*_2077912297_*|*_6_*:*_1_*:*_0"}], "description": "Hi all,\n\nI'd love a feature in Razor to temporarily assign a policy to one or more servers. After booting into the temporary policy it would be automatically reverted to the previous policy, optionally after a specified amount of reboots.\n\nIn my case I have a server that has previously been provisioned with Razor, which now needs to be partitioned slightly differently.\n\nHaving a way to simply add the server to a temporary policy would allow me to reboot the server into the microkernel image, do whatever needs to be done and reboot it to get back to the default policy.\n\nI imagine that such a policy would also be useful for e.g. firmware upgrades (booting a firmware ISO) and debugging (using a LiveDVD ISO).", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10955", "fixedVersions": [], "id": "10955", "issueType": "New Feature", "key": "RAZOR-1092", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:6d9f4174-bf47-424d-a46a-6940b2255f29", "resolution": "Won't Do", "resolutionDate": "2018-11-08T12:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Temporarily change policy", "timeSpent": "PT0S", "updated": "2018-11-08T12:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], it looks like this is the last ticket in this epic - is this something worth doing soon?", "created": "2019-04-17T12:36:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "Due to other issues demanding precedence, we don\u2019t anticipate being able to address this any time soon. As such we are closing this as \u201cWon\u2019t Do.\u201d We may revisit it at a later time, and if so will re-open this ticket.\n\n", "created": "2019-04-18T10:13:00.000000"}], "components": ["CI", "Client"], "created": "2018-08-07T13:32:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6bb69a81"}, {"fieldName": "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": "RAZOR-1053"}, {"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|hzp15b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Apr/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6678665_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_77788312_*|*_10005_*:*_1_*:*_21849203724"}], "epicLinkSummary": "Add razor-vanagon pipelines", "estimate": "PT0S", "externalId": "11049", "fixedVersions": [], "id": "11049", "issueType": "Improvement", "key": "RAZOR-1090", "labels": ["client"], "originalEstimate": "PT0S", "parent": "11468", "parentSummary": "Add razor-vanagon pipelines", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Do", "resolutionDate": "2019-04-18T10:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add razor-client pipeline to build and push gem to artifactory", "timeSpent": "PT0S", "updated": "2019-04-18T10:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "This is duplicated by RAZOR-1060 and RAZOR-1103. ", "created": "2019-05-13T15:36:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This one is actually to be able to install FOSS razor-server on this version of Ubuntu, not to create a task like those tickets.", "created": "2019-05-13T18:14:00.000000"}], "components": ["Server"], "created": "2018-07-31T20:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2aeda37a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:9"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/19"}], "description": "Razor should be able to be installed on the latest LTS from Ubuntu.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11920", "fixedVersions": [], "id": "11920", "issueType": "New Feature", "key": "RAZOR-1089", "labels": ["server_platform", "ubuntu"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ship razor-server for Ubuntu 18.04", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2018-06-14T14:48:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e85cd15"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:8"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Jun/18"}], "description": "In order to guide future decisions around which platforms we can drop support for, Razor should submit basic analytics around which platform (Redhat, Centos, EL6 vs. 7, etc.) is in use on the Razor server.\n\n*Open Questions*\n\n* Which analytics service or destination should we use?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10953", "fixedVersions": [], "id": "10953", "issueType": "Improvement", "key": "RAZOR-1085", "labels": ["Analytics"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send Razor platform analytics", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "Razor has been archived, so closing this.", "created": "2021-06-04T14:45:00.000000"}], "components": [], "created": "2018-05-01T16:00:00.000000", "creator": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7f857b82"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk4g3:r"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1206511473_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_96421004239"}], "description": "Some of the pe_razor tests look for certain files with certain content, e.g. https://github.com/puppetlabs/puppetlabs-pe_razor/blob/master/spec/defines/server/config_spec.rb#L47\n\nSince a lot is hard-coded, it seems more valuable to test that params have the values we expect, rather than testing the whole contents. Otherwise, we have to keep copy+pasting file contents as we make updates, which is a hassle and doesn't provide value.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11472", "fixedVersions": [], "id": "11472", "issueType": "Improvement", "key": "RAZOR-1080", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "resolution": "Won't Do", "resolutionDate": "2021-06-04T14:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Don't test hard-coded files", "timeSpent": "PT0S", "updated": "2021-06-04T14:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "attachments": [], "comments": [{"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "[~accountid:557058:55b23daa-f1aa-41fd-b10d-bf49a61932da] [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I'm happy to provide perspective on how we manage different aspects of the PE services via puppet code if that helps at all.  \n\nDoing things similar to how trapperkeeper / ezbake does things would probably make existing puppet code \"just work.\"  ", "created": "2018-04-27T12:50:00.000000"}], "components": ["Server"], "created": "2018-04-25T14:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2db7b326"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzljwv:"}, {"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": "1_*:*_1_*:*_283996_*|*_10007_*:*_1_*:*_4546435_*|*_3_*:*_1_*:*_2149976080_*|*_5_*:*_1_*:*_32758275896_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_90621462"}], "description": "Now that we have settled out how packaging should work for both FOSS and PE, it would help to have some documentation on which files are used for which platform.\n\nThis could also involve some shuffling of files to improve organization, since .env, .service, .sysconfig, and .init files all live in a flat directory right now.\n\n*In Scope*\n - Adding\u00a0{{ext/README.md}}\u00a0that explains which platforms use each file\n ** Optional: How a module like {{pe_razor}} could influence the variables used by the service.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11579", "fixedVersions": [], "id": "11579", "issueType": "Task", "key": "RAZOR-1079", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-05-21T14:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add documentation for how packaging works", "timeSpent": "PT0S", "updated": "2019-06-04T17:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": [], "created": "2018-04-24T17:35:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@273ee47a"}, {"fieldName": "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": "RAZOR-1053"}, {"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|hzlil3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_55850_*|*_3_*:*_1_*:*_2079280_*|*_5_*:*_1_*:*_34995345988_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_81829288"}], "description": "Starting with PE Irving, anywhere we have `pe-razor-client` in the codebase, it should be updated to `razor-client`. Plus a version update from pe-razor-client's version to razor-client's version, 1.8.1.\n\nConsider variables for both of these values enable easier updates.", "epicLinkSummary": "Add razor-vanagon pipelines", "estimate": "PT0S", "externalId": "11643", "fixedVersions": [], "id": "11643", "issueType": "Task", "key": "RAZOR-1078", "labels": [], "originalEstimate": "PT0S", "parent": "11468", "parentSummary": "Add razor-vanagon pipelines", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2018-04-25T16:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Change pe-razor-client to razor-client and add version variable", "timeSpent": "PT0S", "updated": "2019-06-04T17:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2018-04-24T16:03:00.000000", "creator": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1ce137f5"}, {"fieldName": "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": "RAZOR-1053"}, {"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|hzli8f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_19013_*|*_1_*:*_1_*:*_3005986_*|*_10007_*:*_1_*:*_78642460_*|*_3_*:*_1_*:*_67456129_*|*_5_*:*_1_*:*_26025414870_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_8910313325"}], "description": "Now that we have deprecated the pe-razor-server repo, we should get rid of its existing pipelines in favor of new and improved ones.\n\nSee\u00a0https://cinext-jenkinsmaster-enterprise-prod-1.delivery.puppetlabs.net/view/Razor/", "epicLinkSummary": "Add razor-vanagon pipelines", "estimate": "PT0S", "externalId": "11918", "fixedVersions": [], "id": "11918", "issueType": "Task", "key": "RAZOR-1077", "labels": [], "originalEstimate": "PT0S", "parent": "11468", "parentSummary": "Add razor-vanagon pipelines", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "resolution": "Done", "resolutionDate": "2018-08-07T12:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Remove old pe-razor-server pipelines", "timeSpent": "PT0S", "updated": "2019-06-04T17:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "See details in related ticket.", "created": "2018-04-19T16:21:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db] Can you please provide details about how the fix in RAZOR-1067 affects users? Specifically, what changes are needed to [Enable authentication security|https://puppet.com/docs/pe/2017.3/razor/installing_razor.html#ariaid-title11]?", "created": "2018-04-20T14:00:00.000000"}, {"author": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] Looking at the doc you linked me, the only changes I would probably add are https://github.com/puppetlabs/razor-server/blob/master/doc/shiro-encryption.ini#L17-L18 <-- those lines under the `[main]` header, and then the passwords for `razor` and `other` (`razor` and `pass`, respectively), I would use the SHA-256 versions of those [for `razor`, the sha256 is 9B4F1D0E11DCC029C3493D945E44EE077B68978466C0AAB6D1CE453AAC5F0384 and for `pass`, the sha256 is D74FF0EE8DA3B9806B18C877DBF29BBDE50B5BD8E4DAD7A3A725000FEB82E8F1]. Is there a corresponding doc. on a GitHub repo I can update? If so, I can add those changes myself.\n\n[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] ^ Can you confirm that's correct/if I missed anything that Melissa would need to know?", "created": "2018-04-20T14:26:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Here's a preview of these changes: [https://docs-preview.webteam.puppet.com/docs/pe/2018.1/razor/installing_razor.html#ariaid-title11]\n\n(Credentials here: [https://confluence.puppetlabs.com/pages/viewpage.action?spaceKey=COM&title=Puppet.com+access)]\n\n[~accountid:557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db]\u00a0Please let me know if any additional changes are needed, or resolve the ticket if this looks good.\u00a0", "created": "2018-04-20T18:09:00.000000"}, {"author": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953]\n\nYup, that looks good. Only edits I would make are `sha256` instead of `sha25`. Also might help to mention the actual passwords? E.g. {{9b4f1d0e11dcc029c3493d945e44ee077b68978466c0aab6d1ce453aac5f0384}} is the sha256 of `razor` -- makes it clearer for people who are not entirely familiar with hashing on what those mean. \n\nAlso (and apologies on my end), but the letters in the passwords should be lowercase instead of uppercase. Here are the lower case SHA 256es for your convenience:\n{code}\nrazor => 9b4f1d0e11dcc029c3493d945e44ee077b68978466c0aab6d1ce453aac5f0384\npass  => d74ff0ee8da3b9806b18c877dbf29bbde50b5bd8e4dad7a3a725000feb82e8f1\n{code}\n", "created": "2018-04-23T01:47:00.000000"}], "components": ["DOCS"], "created": "2018-04-19T16:20:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@74466030"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzlf9j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Apr/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1203060_*|*_10009_*:*_1_*:*_232191751_*|*_5_*:*_1_*:*_89541268_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_14949184_*|*_10005_*:*_1_*:*_76800011"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11597", "fixedVersions": ["RAZOR 1.8.1"], "id": "11597", "issueType": "Task", "key": "RAZOR-1076", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2018-04-23T10:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - User password protection in shiro.ini", "timeSpent": "PT0S", "updated": "2018-04-24T16:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is an issue with the runuser command being used in /etc/init.d/razor-server, which does not exist on Ubuntu 14.04.", "created": "2018-04-19T12:40:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed by\u00a0https://github.com/puppetlabs/razor-server/pull/406.", "created": "2018-04-19T14:11:00.000000"}], "components": [], "created": "2018-04-18T16:27:00.000000", "creator": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b919232"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzle13:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Apr/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_5894_*|*_1_*:*_1_*:*_76352200_*|*_3_*:*_1_*:*_1882251_*|*_5_*:*_1_*:*_422361606_*|*_6_*:*_2_*:*_12689_*|*_10006_*:*_1_*:*_5073"}], "description": "{code}\n$ wget http://builds.delivery.puppetlabs.net/razor-server/bf4aa8e155466809b654ae2639058e77569b7259/artifacts/deb/trusty/puppet5/razor-server_1.7.1.23.gbf4aa8e-1trusty_all.deb\n$ dpgk -i razor-server_1.7.1.23.gbf4aa8e-1trusty_all.deb\n$ apt-get update\n$ apt-get install -f\n$ service razor-server start\nLaunching razor-server: done.\nWaiting 30 seconds for start: . failed.\n{code}\n\n{code}\n$ /opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/bin/standalone.sh\n=========================================================================  \nJBoss Bootstrap Environment  \nJBOSS_HOME: /opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss  \nJAVA: java  \nJAVA_OPTS:  -server -XX:+UseCompressedOops -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true\n=========================================================================\n16:27:19,323 INFO  [org.jboss.modules] (main) JBoss Modules version 1.2.0.CR1\n16:27:19,516 INFO  [org.jboss.msc] (main) JBoss MSC version 1.0.4.GA\n16:27:19,966 INFO  [org.torquebox.bootstrap] (ServerService Thread Pool -- 6) Bootstrapping TorqueBox\n16:27:19,977 INFO  [org.torquebox.bootstrap] (ServerService Thread Pool -- 6) Bootstrapping TorqueBox with a JRuby home of /opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby\n16:27:20,340 INFO  [org.torquebox.web.as] (ServerService Thread Pool -- 11) Initializing TorqueBox Web Subsystem\n16:27:20,343 INFO  [org.torquebox.stomp.as] (ServerService Thread Pool -- 12) Initializing TorqueBox STOMP Subsystem\n16:27:20,341 INFO  [org.torquebox.services.as] (ServerService Thread Pool -- 17) Initializing TorqueBox Services Subsystem\n16:27:20,365 INFO  [org.torquebox.security.as] (ServerService Thread Pool -- 16) Initializing TorqueBox Auth Subsystem\n16:27:20,366 INFO  [org.torquebox.messaging.as] (ServerService Thread Pool -- 15) Initializing TorqueBox Messaging Subsystem\n16:27:20,367 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13) Initializing TorqueBox Core Subsystem\n16:27:20,367 INFO  [org.torquebox.jobs.as] (ServerService Thread Pool -- 14) Initializing TorqueBox Jobs Subsystem\n16:27:20,388 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13) Welcome to TorqueBox AS - http://torquebox.org/\n16:27:20,388 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)   version........... 3.2.0\n16:27:20,389 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)   build............. 97\n16:27:20,389 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)   revision.......... 243dd44b80a0cb0ec6c6646ec66eb49c27fb8003\n16:27:20,389 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)   built with:\n16:27:20,390 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)     HornetQ......... 2.3.1.Final (Wild Hornet, 123)\n16:27:20,390 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)     JBossAS......... 7.2.x.slim.incremental.16\n16:27:20,392 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)     Infinispan...... 6.0.0.Final\n16:27:20,393 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)     Quartz.......... 2.1.516:27:20,393 INFO  [org.torquebox.core.as] (ServerService Thread Pool -- 13)     JRuby........... 9.1.5.0\n16:27:20,553 WARN  [org.jboss.as.server] (Controller Boot Thread) JBAS015883: No security realm defined for native management service; all access will be unrestricted.\n16:27:20,557 INFO  [org.xnio] (MSC service thread 1-4) XNIO Version 3.0.7.GA\n16:27:20,560 INFO  [org.jboss.as.server] (Controller Boot Thread) JBAS015888: Creating http management service using socket-binding (management-http)\n16:27:20,561 WARN  [org.jboss.as.server] (Controller Boot Thread) JBAS015884: No security realm defined for http management service; all access will be unrestricted.\n16:27:20,572 INFO  [org.xnio.nio] (MSC service thread 1-4) XNIO NIO Implementation Version 3.0.7.GA\n16:27:20,583 INFO  [org.jboss.remoting] (MSC service thread 1-4) JBoss Remoting version 3.2.14.GA\n16:27:20,633 INFO  [org.jboss.as.remoting] (MSC service thread 1-2) JBAS017100: Listening on 127.0.0.1:9999\n16:27:20,671 INFO  [org.jboss.as.connector.logging] (MSC service thread 1-4) JBAS010408: Starting JCA Subsystem (JBoss IronJacamar 1.0.15.Final)\n16:27:20,685 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 30) JBAS011800: Activating Naming Subsystem\n16:27:20,699 INFO  [org.jboss.as.naming] (MSC service thread 1-3) JBAS011802: Starting Naming Service\n16:27:20,744 INFO  [org.jboss.as.security] (ServerService Thread Pool -- 33) JBAS013171: Activating Security Subsystem\n16:27:20,753 INFO  [org.jboss.as.security] (MSC service thread 1-3) JBAS013170: Current PicketBox version=4.0.15.Final\n16:27:20,964 WARN  [org.jboss.as.messaging] (MSC service thread 1-4) JBAS011600: AIO wasn't located on this platform, it will fall back to using pure Java NIO. If your platform is Linux, install LibAIO to enable the AIO journal\n16:27:21,007 ERROR [org.jboss.msc.service.fail] (pool-3-thread-1) MSC00001: Failed to start service torquebox.core.runtime.global: org.jboss.msc.service.StartException in service torquebox.core.runtime.global: java.lang.NoClassDefFoundError: org/jruby/ir/persistence/IRReaderDecoder\tat org.projectodd.polyglot.core.AsyncService$1.run(AsyncService.java:52) [polyglot-core.jar:1.20.0]\tat java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:473) [rt.jar:1.7.0_171]\tat java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_171]\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152) [rt.jar:1.7.0_171]\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622) [rt.jar:1.7.0_171]\tat java.lang.Thread.run(Thread.java:748) [rt.jar:1.7.0_171]Caused by: java.lang.NoClassDefFoundError: org/jruby/ir/persistence/IRReaderDecoder\tat org.jruby.RubyInstanceConfig.<init>(RubyInstanceConfig.java:84) [jruby.jar:]\tat org.torquebox.core.runtime.TorqueBoxRubyInstanceConfig.<init>(TorqueBoxRubyInstanceConfig.java:24) [torquebox-core.jar:3.2.0]\tat org.torquebox.core.runtime.RubyRuntimeFactory.createInstance(RubyRuntimeFactory.java:266) [torquebox-core.jar:3.2.0]\tat org.torquebox.core.runtime.RubyRuntimeFactory.createInstance(RubyRuntimeFactory.java:261) [torquebox-core.jar:3.2.0]\tat org.torquebox.core.GlobalRuby.startAsync(GlobalRuby.java:56) [torquebox-core.jar:3.2.0]\tat org.projectodd.polyglot.core.AsyncService$1.run(AsyncService.java:49) [polyglot-core.jar:1.20.0]\t... 5 moreCaused by: java.lang.ClassNotFoundException: org.jruby.ir.persistence.IRReaderDecoder from [Module \"org.torquebox.bootstrap:main\" from local module loader @50f8963c (finder: local module finder @704f66ab (roots: /opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/modules,/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/modules/system/layers/torquebox,/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/modules/system/layers/polyglot,/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/modules/system/layers/base))]\tat org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190) [jboss-modules.jar:1.2.0.CR1]\tat org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468) [jboss-modules.jar:1.2.0.CR1]\tat org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456) [jboss-modules.jar:1.2.0.CR1]\tat org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398) [jboss-modules.jar:1.2.0.CR1]\tat org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120) [jboss-modules.jar:1.2.0.CR1]\t... 11 more\n16:27:21,026 INFO  [org.apache.coyote.http11] (MSC service thread 1-2) JBWEB003001: Coyote HTTP/1.1 initializing on : http-localhost/127.0.0.1:8080\n16:27:21,060 INFO  [org.apache.coyote.http11] (MSC service thread 1-2) JBWEB003000: Coyote HTTP/1.1 starting on: http-localhost/127.0.0.1:8080\n16:27:21,105 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221000: live server is starting with configuration HornetQ Configuration (clustered=false,backup=false,sharedStore=true,journalDirectory=/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/standalone/data/messagingjournal,bindingsDirectory=/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/standalone/data/messagingbindings,largeMessagesDirectory=/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/standalone/data/messaginglargemessages,pagingDirectory=/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/standalone/data/messagingpaging)16:27:21,109 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221006: Waiting to obtain live lock\n16:27:21,161 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221013: Using NIO Journal\n16:27:21,309 INFO  [org.jboss.as.remoting] (MSC service thread 1-1) JBAS017100: Listening on 127.0.0.1:4447\n16:27:21,309 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221034: Waiting to obtain live lock\n16:27:21,316 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221035: Live Server Obtained live lock\n16:27:21,341 INFO  [org.infinispan.factories.GlobalComponentRegistry] (ServerService Thread Pool -- 46) ISPN000128: Infinispan version: Infinispan 'Infinium' 6.0.0.Final\n16:27:21,348 INFO  [org.jboss.as.server.deployment.scanner] (MSC service thread 1-1) JBAS015012: Started FileSystemDeploymentService for directory /opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/standalone/deployments\n16:27:21,634 INFO  [org.infinispan.jmx.CacheJmxRegistration] (ServerService Thread Pool -- 46) ISPN000031: MBeans were successfully registered to the platform MBean server.\n16:27:21,636 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 46) JBAS010281: Started __recoveryInfoCacheName__ cache from polyglot container\n16:27:21,644 INFO  [org.infinispan.jmx.CacheJmxRegistration] (ServerService Thread Pool -- 46) ISPN000031: MBeans were successfully registered to the platform MBean server.\n16:27:21,645 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 46) JBAS010281: Started sessions cache from polyglot container\n16:27:21,669 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221020: Started Netty Acceptor version 3.6.2.Final-c0d783c 127.0.0.1:5455 for CORE protocol\n16:27:21,671 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221020: Started Netty Acceptor version 3.6.2.Final-c0d783c 127.0.0.1:5445 for CORE protocol\n16:27:21,672 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221007: Server is now live\n16:27:21,672 INFO  [org.hornetq.core.server] (MSC service thread 1-4) HQ221001: HornetQ Server version 2.3.1.Final (Wild Hornet, 123) [9fac5640-4292-11e8-8f20-af3437ed16b4]\n16:27:21,695 INFO  [org.jboss.as.messaging] (ServerService Thread Pool -- 46) JBAS011601: Bound messaging object to jndi name java:/ConnectionFactory\n16:27:21,697 INFO  [org.jboss.as.messaging] (ServerService Thread Pool -- 47) JBAS011601: Bound messaging object to jndi name java:jboss/exported/jms/RemoteConnectionFactory\n16:27:21,755 INFO  [org.jboss.as.connector.deployment] (MSC service thread 1-2) JBAS010406: Registered connection factory java:/JmsXA16:27:21,780 INFO  [org.hornetq.ra] (MSC service thread 1-2) HornetQ resource adaptor started\n16:27:21,780 INFO  [org.jboss.as.connector.services.resourceadapters.ResourceAdapterActivatorService$ResourceAdapterActivator] (MSC service thread 1-2) IJ020002: Deployed: file://RaActivatorhornetq-ra\n16:27:21,783 INFO  [org.jboss.as.connector.deployment] (MSC service thread 1-4) JBAS010401: Bound JCA ConnectionFactory [java:/JmsXA]\n16:27:21,825 INFO  [org.jboss.as.controller] (Controller Boot Thread) JBAS014774: Service status reportJBAS014777:   Services which failed to start:      service torquebox.core.runtime.global: org.jboss.msc.service.StartException in service torquebox.core.runtime.global: java.lang.NoClassDefFoundError: org/jruby/ir/persistence/IRReaderDecoder\n16:27:22,020 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management\n16:27:22,021 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015954: Admin console is not enabled\n16:27:22,021 ERROR [org.jboss.as] (Controller Boot Thread) JBAS015875: JBoss AS 7.2.x.slim.incremental.16 \"Janus\" started (with errors) in 3020ms - Started 103 of 156 services (1 services failed or missing dependencies, 52 services are passive or on-demand)\n{code}\nThis error^ comes after installing postgresql.\n\nA different error occurs without postgresql, which isn't terribly unexpected, but other platforms DON'T need postgresql to start the service\u00a0\u00af\\_(\u30c4)_/\u00af\n\nThe service starts up as expected in version 1.7.1.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11127", "fixedVersions": [], "id": "11127", "issueType": "Bug", "key": "RAZOR-1074", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "resolution": "Fixed", "resolutionDate": "2018-04-19T14:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-service won't start on ubuntu-14.04", "timeSpent": "PT0S", "updated": "2018-04-24T11:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2018-04-13T12:29:00.000000", "creator": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@d3a544f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzohxr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7223_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_60131100429"}], "description": "Currently, we have a postinstall action that recursively changes directory ownership on the razor-server files: [https://github.com/puppetlabs/razor-vanagon/blob/master/configs/components/razor-server.rb#L80-L87]\n\n\u00a0\n\nWe should set this before install, so that querying package files is accurate.\n\n(`rpm -qV` shouldn't report any differences)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11075", "fixedVersions": [], "id": "11075", "issueType": "Improvement", "key": "RAZOR-1073", "labels": ["pairing"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "resolution": "Won't Do", "resolutionDate": "2020-03-09T11:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Set directory/file ownership in the package", "timeSpent": "PT0S", "updated": "2021-03-11T12:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "attachments": [], "comments": [], "components": [], "created": "2018-04-12T14:19: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@99e659"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzl9bj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10143407_*|*_10007_*:*_1_*:*_695057116_*|*_5_*:*_1_*:*_34930716541_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_491893030"}], "description": "https://puppet.atlassian.net/browse/RAZOR-433 adds a new depth parameter to the /api/collection/<type> endpoint. The semantics are as follows:\n - When depth = 1, the endpoint returns a detailed list of items where each item would have the same contents as that returned by /api/collection/<type>/<item_id>\n\n - When depth = 0, the endpoint returns just the list of items (which was the original, default behavior).\n\nWhen querying the /api/collection/<type>, the Razor CLI makes N + 1 requests to get the full details of each item, where N is the number of items in the collection (the extra +1 is to the entrypoint). This does not scale well when N is large. Work in this ticket consists of modifying the Razor CLI to use the new depth parameter, set to 1, so that we only make 2 requests total: one for the entrypoint, and one to the /api/collection/<type> endpoint itself.\n\nNote: The CLI should only use the depth argument when the API says that it is an available option. Additionally, this argument does not need any exposure at the user-facing level.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11470", "fixedVersions": ["RAZOR 1.9.2"], "id": "11470", "issueType": "Improvement", "key": "RAZOR-1072", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "resolution": "Fixed", "resolutionDate": "2018-04-26T10:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Use the depth parameter in the Razor CLI", "timeSpent": "PT0S", "updated": "2019-06-04T17:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "body": "[~accountid:557058:55b23daa-f1aa-41fd-b10d-bf49a61932da] is this ticket to add steps to a razor-server pipeline that do something similar to the agent where we run PEZ, and once it passes we run [https://jenkins-master-prod-1.delivery.puppetlabs.net/view/puppet-agent/view/Public%20Suites/view/master/view/Suite/job/platform_enterprise-dist_packaging_promotion/]\u00a0?", "created": "2018-03-21T13:27:00.000000"}, {"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "[~accountid:557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20] correct.", "created": "2018-03-21T17:35:00.000000"}, {"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "Though this is probably blocked on RAZOR-1065.", "created": "2018-03-21T17:37:00.000000"}, {"author": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "body": "Okay, cool, then I put this ticket in the correct epic", "created": "2018-03-21T17:51:00.000000"}, {"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "-We need to make sure to only promote pe-razor-server, and not foss razor-server. They ship to the same directory on builds, so the current promotion job grabs both.-\n\n\u00a0\n\nActually, we're working to remedy this. See RE-10703.", "created": "2018-04-20T15:01:00.000000"}, {"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "packages should ship to the pe-razor-server directory on builds.", "created": "2018-04-25T12:40:00.000000"}], "components": [], "created": "2018-03-09T18:17:00.000000", "creator": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@44429f4a"}, {"fieldName": "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": "RAZOR-1053"}, {"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|hykr1j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Mar/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_259937376_*|*_1_*:*_1_*:*_935611847_*|*_10007_*:*_1_*:*_147814685_*|*_3_*:*_1_*:*_1146451142_*|*_5_*:*_1_*:*_23093639033_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_8114993500_*|*_10005_*:*_1_*:*_5349103329"}], "description": "see https://github.com/puppetlabs/ci-job-configs/commit/ebee43b5b2044ff52bc0c6f91082402eec4bc1f0 for reference", "epicLinkSummary": "Add razor-vanagon pipelines", "estimate": "PT0S", "externalId": "11595", "fixedVersions": [], "id": "11595", "issueType": "Improvement", "key": "RAZOR-1064", "labels": [], "originalEstimate": "PT0S", "parent": "11468", "parentSummary": "Add razor-vanagon pipelines", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "resolution": "Fixed", "resolutionDate": "2018-09-10T10:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Enable PEZ + promotion of razor-server in PE", "timeSpent": "PT0S", "updated": "2019-06-04T17:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2018-03-09T11:05:00.000000", "creator": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1055018f"}, {"fieldName": "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": "RAZOR-991"}, {"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|hzkjcf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14475063_*|*_6_*:*_1_*:*_0"}], "description": "We want to have only one razor-server repo, that promotes into PE, like puppet-agent.", "epicLinkSummary": "Spike on razor packaging process", "estimate": "PT0S", "externalId": "11272", "fixedVersions": [], "id": "11272", "issueType": "Task", "key": "RAZOR-1063", "labels": [], "originalEstimate": "PT0S", "parent": "11584", "parentSummary": "Spike on razor packaging process", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "resolution": "Duplicate", "resolutionDate": "2018-03-09T15:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Consolidate razor-server and pe-razor-server", "timeSpent": "PT0S", "updated": "2018-03-09T15:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2018-02-28T12:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@19e47e7c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:4"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Apr/18"}], "description": "Several of the acceptance tests won't\u00a0find anything that's not already discoverable via a unit test. Others are just duplicated between every single command. This ticket should cover the work to just delete any tests that would not reveal a meaningful problem if they failed.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11072", "fixedVersions": [], "id": "11072", "issueType": "Task", "key": "RAZOR-1062", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Eliminate useless acceptance tests", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "5aa6cd9bfe2b4b24ab21c2f7", "attachments": [], "comments": [{"author": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "body": "Using the legacy \"alternative installer\" from [http://cdimage.ubuntu.com/releases/18.04/release/]\u00a0works with the existing ubuntu task as a workaround until subiquity is supported, with one caveat: the razor_postinstall.sh dropped by the preseed does not execute on boot as rc.local is not supported under systemd by default, and because enabling it causes systemctl to exit with an error code, you can't tell it in the preseed to enable it without the install breaking :(\n\nHowever, for now apparently subiquity doesn't support LVM, so not sure why anyone would ever want to run their official \"live server\" ISO anyway only to discover basic partitioning is not supported :(", "created": "2018-04-26T19:47:00.000000"}, {"author": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "body": "To get the razor_postinstall.sh to work, you need to make two modifications to the preseed that drops it", "created": "2018-05-21T18:38:00.000000"}, {"author": "5aa6cd9bfe2b4b24ab21c2f7", "body": "* [https://github.com/puppetlabs/razor-server/pull/429]\n * [https://github.com/puppetlabs/pe-razor-vagrant-stack/pull/21]", "created": "2019-05-30T11:33:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "[~accountid:5aa6cd9bfe2b4b24ab21c2f7], when you have a chance, could you please update the fix version and release notes for this? Thank you!", "created": "2019-06-04T12:07:00.000000"}, {"author": "5aa6cd9bfe2b4b24ab21c2f7", "body": "Per [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], no formal release notes are placed here. He will file a separate PR to update NEWS.md when he next does a release.", "created": "2019-06-04T13:32:00.000000"}], "components": ["Tasks"], "created": "2018-02-22T17:12:00.000000", "creator": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@18f247ba"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2v0f:"}, {"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": "30/May/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_22004962_*|*_1_*:*_1_*:*_83401403_*|*_10007_*:*_1_*:*_524046463_*|*_3_*:*_1_*:*_773337279_*|*_5_*:*_1_*:*_7436271529_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_38944565783"}], "description": "Canonical have created a new installer for 18.04 \"Bionic Beaver\" and existing Razor tasks for invoking the ubuntu installer in previous LTS versions are incompatible.\n\nAt a minimum the boot_install.erb for bionic will need to be modified from previous versions to invoke the new installer (subiquity) instead.\n\nCanonical have a bug tracker in the usual location: [https://bugs.launchpad.net/subiquity/]\u00a0for issues that are their fault\n\n*In Scope*\n * Move current `ubuntu.task` files to `ubuntu/trusty.task`.\n * Create/tweak new Bionic task in `ubuntu.task`.\n * Create stub for Bionic task in `ubuntu/bionic.task`", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11122", "fixedVersions": ["razor-server 1.9.6"], "id": "11122", "issueType": "New Feature", "key": "RAZOR-1060", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "resolution": "Fixed", "resolutionDate": "2019-06-04T17:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add task for Ubuntu 18.04", "timeSpent": "PT0S", "updated": "2019-08-29T19:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by\u00a0https://github.com/puppetlabs/razor-server/pull/397.", "created": "2018-02-20T14:45:00.000000"}], "components": [], "created": "2018-02-20T11:52: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@55ec341d"}, {"fieldName": "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": "RAZOR-991"}, {"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|hzk553:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10329292_*|*_10007_*:*_1_*:*_74393735_*|*_5_*:*_1_*:*_1645375114_*|*_6_*:*_1_*:*_0"}], "description": "[https://docs.google.com/document/d/1vFF7g-Dbjr5MJvu3PEsU4_u0cPIrzHDWY1BfXoOqyrk]\u00a0lists the differences between the {{pe-razor-server}}\u00a0and {{razor-server}}\u00a0repos. It indicates that some of these files may be moved from {{pe-razor-server}} to {{razor-server}}. Work in this ticket requires porting over those files, ensuring that functional parity is achieved between the `pe-razor-server` and `razor-server` repos.", "epicLinkSummary": "Spike on razor packaging process", "estimate": "PT0S", "externalId": "11638", "fixedVersions": ["RAZOR 1.7.0"], "id": "11638", "issueType": "Story", "key": "RAZOR-1057", "labels": [], "originalEstimate": "PT0S", "parent": "11584", "parentSummary": "Spike on razor packaging process", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "resolution": "Fixed", "resolutionDate": "2018-02-21T11:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Port over relevant pe-razor-server files to razor-server", "timeSpent": "PT0S", "updated": "2018-03-12T13:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Spec and acceptance tests will be added via the linked ticket. Closing this as a duplicate.", "created": "2018-07-31T20:06:00.000000"}], "components": [], "created": "2018-02-16T16:17: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": "* razor is also tested in the razor pipelines"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5eaaca16"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hykr13:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "01/Aug/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_46905_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_14266054983"}], "description": "Add jenkins definitions to also test razor in the razor pipelines", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11637", "fixedVersions": [], "id": "11637", "issueType": "Task", "key": "RAZOR-1056", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "resolution": "Duplicate", "resolutionDate": "2018-07-31T20:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add testing jobs to the razor pipeline", "timeSpent": "PT0S", "updated": "2018-07-31T20:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "5aa6cd9bfe2b4b24ab21c2f7", "body": "This was addressed in https://github.com/puppetlabs/razor-server/pull/409", "created": "2018-05-04T09:35:00.000000"}], "components": [], "created": "2018-02-16T16:16: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": "* you can run beaker from the razor-server project to run tests."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@20a86e23"}, {"fieldName": "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": "RAZOR-1053"}, {"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|hzk49j:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/May/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_128477_*|*_10007_*:*_1_*:*_252517859_*|*_5_*:*_1_*:*_34244067347_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_6372560568"}], "description": "Update razor-server to include the acceptance folder from pe-razor-server, from which we can run beaker acceptance testing.", "epicLinkSummary": "Add razor-vanagon pipelines", "estimate": "PT0S", "externalId": "11593", "fixedVersions": [], "id": "11593", "issueType": "Task", "key": "RAZOR-1055", "labels": [], "originalEstimate": "PT0S", "parent": "11468", "parentSummary": "Add razor-vanagon pipelines", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "resolution": "Done", "resolutionDate": "2018-05-04T09:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Move beaker testing from pe-razor-server to razor-server", "timeSpent": "PT0S", "updated": "2019-06-04T17:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2018-02-16T16:11:00.000000", "creator": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Skeletor"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@274a860a"}, {"fieldName": "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 Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-9"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Razor CI Pipelines"}, {"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": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "orange"}, {"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|hykp8n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4569881352_*|*_6_*:*_1_*:*_0_*|*_10013_*:*_1_*:*_22514973968_*|*_10015_*:*_1_*:*_9696436502"}], "description": "This epic of work consists of the items required to create pipelines to build and test Razor using the razor-vanagon project.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11468", "fixedVersions": [], "id": "11468", "issueType": "Epic", "key": "RAZOR-1053", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "resolution": "Done", "resolutionDate": "2019-04-18T10:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add razor-vanagon pipelines", "timeSpent": "PT0S", "updated": "2020-12-08T13:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "This should include promoting razor-server changes into razor-vanagon.", "created": "2018-04-17T12:38:00.000000"}, {"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "When building, we will need to set the PROJECT as an environment variable (either 'razor-server' or 'pe-razor-server' - perhaps a pipeline for each) to ensure packages end up in the appropriate directory on builds for smooth shipping and promoting.", "created": "2018-04-25T12:39:00.000000"}, {"author": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "body": "[~accountid:557058:55b23daa-f1aa-41fd-b10d-bf49a61932da] yep, the generic vanagon pipelines set the project name dynamically, this is easy", "created": "2018-04-25T12:41:00.000000"}, {"author": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "body": "PR has been merged, going to leave this ticket in integrating until we get a passing run of the new pipelines.", "created": "2018-08-06T11:45:00.000000"}], "components": [], "created": "2018-02-16T16:10: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": "* pipelines exist for razor on jenkins-master-prod-1"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@50a5db23"}, {"fieldName": "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": "RAZOR-1053"}, {"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|hykr0v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Apr/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_92741479_*|*_1_*:*_3_*:*_511890052_*|*_10007_*:*_1_*:*_506373940_*|*_3_*:*_3_*:*_3538365572_*|*_5_*:*_1_*:*_26022001890_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_10198266781"}], "description": "We should set up Razor pipelines to build the razor-vanagon project.\n\nWe will be able to extend these pipelines to also test Razor when the project has beaker testing available.\u00a0", "epicLinkSummary": "Add razor-vanagon pipelines", "estimate": "PT0S", "externalId": "11121", "fixedVersions": [], "id": "11121", "issueType": "Task", "key": "RAZOR-1052", "labels": [], "originalEstimate": "PT0S", "parent": "11468", "parentSummary": "Add razor-vanagon pipelines", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "resolution": "Done", "resolutionDate": "2018-08-07T13:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Construct razor vanagon pipelines to build the razor vanagon project", "timeSpent": "PT0S", "updated": "2019-06-04T17:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by\u00a0https://github.com/puppetlabs/razor-server/pull/395.", "created": "2018-02-16T16:04:00.000000"}], "components": [], "created": "2018-02-16T12:27: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@666c3125"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "Automated Test"}, {"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|hzk3o7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_327712955_*|*_1_*:*_1_*:*_9901790_*|*_10007_*:*_1_*:*_3326975_*|*_5_*:*_1_*:*_1732688467_*|*_6_*:*_1_*:*_0"}], "description": "This transient happens pretty often \u2013 I would say at least 33% of the time. Here is the output of the failures:\n{code:java}\nFailures:\n\n1) Razor::Data::Hook output should allow clearing the node's metadata\nFailure/Error: run_message(event)\nErrno::EPIPE:\nBroken pipe - No message available\n# ./lib/razor/data/hook.rb:331:in `exec_script'\n# ./lib/razor/data/hook.rb:207:in `block in execute'\n# ./lib/razor/data/hook.rb:187:in `execute'\n# ./lib/razor/data/hook.rb:58:in `block in run'\n# ./lib/razor/data/hook.rb:57:in `run'\n# ./lib/razor/data/hook.rb:46:in `_run'\n# ./spec/data/hook_spec.rb:680:in `block in (root)'\n# ./spec/data/hook_spec.rb:17:in `block in (root)'\n# ./spec/data/hook_spec.rb:9:in `block in (root)'\n\n2) Razor::Data::Hook events should fire for node-bound-to-policy\nFailure/Error: run_message(queue.receive)\nErrno::EPIPE:\nBroken pipe - No message available\n# ./lib/razor/data/hook.rb:331:in `exec_script'\n# ./lib/razor/data/hook.rb:207:in `block in execute'\n# ./lib/razor/data/hook.rb:187:in `execute'\n# ./lib/razor/data/hook.rb:58:in `block in run'\n# ./lib/razor/data/hook.rb:57:in `run'\n# ./lib/razor/data/hook.rb:46:in `_run'\n# ./spec/data/hook_spec.rb:1012:in `block in (root)'\n# ./spec/data/hook_spec.rb:17:in `block in (root)'\n# ./spec/data/hook_spec.rb:9:in `block in (root)'{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11467", "fixedVersions": ["RAZOR 1.7.0"], "id": "11467", "issueType": "Bug", "key": "RAZOR-1051", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "resolution": "Fixed", "resolutionDate": "2018-02-20T11:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor unit tests fail with Errno::EPIPE transient", "timeSpent": "PT0S", "updated": "2018-03-12T13:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "attachments": [], "comments": [], "components": [], "created": "2018-02-15T11:37: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@5d5f3102"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzk2c7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_340510490_*|*_1_*:*_1_*:*_1311368_*|*_10007_*:*_1_*:*_2154142_*|*_5_*:*_1_*:*_1732693380_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_86249739_*|*_10005_*:*_1_*:*_69345"}], "description": "These errors are present when running on CentOS 7:\n{code:java}\n  1) Razor::BrokerType find with one broker path should raise if the install template is present but unreadable\n     Failure/Error: expect {\n       expected Razor::BrokerTypeInvalidError with \"test has install template install.erb, but it is unreadable\" but nothing was raised\n     # ./spec/broker_type_spec.rb:143:in `block in (root)'\n     # ./spec/broker_type_spec.rb:21:in `with_brokers_in'\n     # ./spec/broker_type_spec.rb:141:in `block in (root)'\n     # ./spec/broker_type_spec.rb:109:in `block in (root)'\n     # ./spec/broker_type_spec.rb:107:in `block in (root)'\n  2) Razor::Data::Hook handle should fail when it can't run the shebang line\n     Failure/Error: run_message(queue.receive)\n     Errno::EPIPE:\n       Broken pipe - No message available\n     # ./lib/razor/data/hook.rb:331:in `exec_script'\n     # ./lib/razor/data/hook.rb:207:in `block in execute'\n     # ./lib/razor/data/hook.rb:187:in `execute'\n     # ./lib/razor/data/hook.rb:58:in `block in run'\n     # ./lib/razor/data/hook.rb:57:in `run'\n     # ./lib/razor/data/hook.rb:46:in `_run'\n     # ./spec/data/hook_spec.rb:221:in `block in (root)'\n     # ./spec/data/hook_spec.rb:17:in `block in (root)'\n     # ./spec/data/hook_spec.rb:9:in `block in (root)'\n  3) Razor::Data::Repo make_the_repo_accessible with file URLs should raise (to trigger a retry) if the repo is not readable\n     Failure/Error: expect {\n       expected RuntimeError with message matching /unable to read local file/ but nothing was raised\n     # ./spec/data/repo_spec.rb:282:in `block in (root)'{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10915", "fixedVersions": ["RAZOR 1.7.0"], "id": "10915", "issueType": "Bug", "key": "RAZOR-1050", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "resolution": "Fixed", "resolutionDate": "2018-02-20T11:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Fix unit tests to ensure that they pass on RHEL 7", "timeSpent": "PT0S", "updated": "2018-03-12T13:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": [], "created": "2018-02-10T17:14:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@630397eb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzjyp3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_145994698_*|*_5_*:*_1_*:*_1462151417_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_966620748"}], "description": "The {{like}} tag operator has been in PE since 2015.3, and should be added to the list of operators in the PE docs.\nThe explanation of this tag is:\n{noformat}\ntrue if arg1 =~ arg2 (interpreting arg2 as Regex)\n{noformat}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11270", "fixedVersions": ["RAZOR 1.7.0"], "id": "11270", "issueType": "Bug", "key": "RAZOR-1047", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-02-23T14:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs: Add `like` to PE docs", "timeSpent": "PT0S", "updated": "2018-03-12T13:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/393.", "created": "2018-02-09T15:41:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit\u00a088482b0b8d20f31be126bfeb233660a4877821e0.", "created": "2018-02-12T11:27:00.000000"}], "components": ["Server"], "created": "2018-02-09T15:39:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2415a5bc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzjyfz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_84685_*|*_10007_*:*_1_*:*_243972202_*|*_5_*:*_1_*:*_2422809452_*|*_6_*:*_1_*:*_0"}], "description": "There's a syntax error in the `windows/2012r2` unattended.xml task:\n{code:java}\nSyntaxError:\n/Users/smcclellan/IdeaProjects/razor/razor-server/spec/fixtures/tasks/some_os.task/erb_syntax.erb:2: syntax error, unexpected tSTRING_BEG\n@_out_buf.concat \" true\\n\"\n^\n# ./app.rb:325:in `render_template'\n# ./app.rb:504:in `HEAD /svc/file/:node_id/:template'\n# ./lib/razor/middleware/auth.rb:52:in `call'\n# ./lib/razor/middleware/logger.rb:13:in `call'\n# ./spec/app/provisioning_spec.rb:293:in `(root)'\n{code}\nThis is due to a few lingering \\{\\{-%>\\}} which should be changed to\u00a0\\{\\{%>\\}}.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11120", "fixedVersions": ["RAZOR 1.7.0"], "id": "11120", "issueType": "Bug", "key": "RAZOR-1046", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-02-12T11:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Windows 2012r2 unattended.xml has syntax error", "timeSpent": "PT0S", "updated": "2018-03-12T13:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": ["Server"], "created": "2018-02-05T15:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5aa2de20"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "Customer Feedback"}, {"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|hzjt53:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_4652074_*|*_1_*:*_1_*:*_69601143_*|*_3_*:*_1_*:*_88091392_*|*_5_*:*_1_*:*_2850844295_*|*_6_*:*_1_*:*_0"}], "description": "On new installations of Razor 1.7.0, nodes seem to be wrongly merged together. See associated email thread:\n\n[https://groups.google.com/d/msg/puppet-razor/i7mE65bKcuQ/qlt5_J8rBgAJ]\n\nThis should be patched and released as 1.7.1.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11916", "fixedVersions": ["RAZOR 1.7.1"], "id": "11916", "issueType": "Bug", "key": "RAZOR-1045", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-02-07T12:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Nodes being incorrectly coalesced", "timeSpent": "PT0S", "updated": "2018-03-12T13:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server", "Tasks"], "created": "2018-01-10T13:29:00.000000", "creator": "557058:35060490-aa27-40a2-b587-eca7672140c8", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@43bc67a4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:3"}], "description": "I understand that RAZOR-967 was validated/verified against 6.0. I'm working with a user who wants reassurance that support for 6.0 also covers ESXi 6.5. \n\nCan we confirm that we've tested it against that version?", "environment": "ESXi 6.5", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11574", "fixedVersions": [], "id": "11574", "issueType": "Task", "key": "RAZOR-1043", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:35060490-aa27-40a2-b587-eca7672140c8", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Confirm ESXi 6.5 support in Razor", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:57:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@60ee87c4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix9j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10540_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959190040"}], "description": "(Initial planned release date: 2018-01-10)\n\nClose any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.7.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": "11306", "fixedVersions": [], "id": "11306", "issueType": "Sub-task", "key": "RAZOR-1040", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "https://groups.google.com/forum/#!topic/puppet-razor/G3Ru-_ucHGU", "created": "2018-03-12T13:15:00.000000"}], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a4cd944"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix9b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4431_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959205973"}], "description": "(Initial planned release date: 2018-01-10)\n\n  * [~accountid:557058:254cdefb-9532-46cb-b4ac-84c3df97d6af]: 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": "11118", "fixedVersions": [], "id": "11118", "issueType": "Sub-task", "key": "RAZOR-1039", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@769e6a0d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix93:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4146_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959214639"}], "description": "(Initial planned release date: 2018-01-10)\n\nPush the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11069", "fixedVersions": [], "id": "11069", "issueType": "Sub-task", "key": "RAZOR-1038", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:254cdefb-9532-46cb-b4ac-84c3df97d6af", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5898bab2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix8v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7742_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959220907"}], "description": "(Initial planned release date: 2018-01-10)\n\nPush 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": "10909", "fixedVersions": [], "id": "10909", "issueType": "Sub-task", "key": "RAZOR-1037", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:254cdefb-9532-46cb-b4ac-84c3df97d6af", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c1ec43a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix8n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5223_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959230929"}], "description": "(Initial planned release date: 2018-01-10)\n\nThe 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": "11915", "fixedVersions": [], "id": "11915", "issueType": "Sub-task", "key": "RAZOR-1036", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6105baa5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix8f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5078_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959239517"}], "description": "(Initial planned release date: 2018-01-10)\n\nThis should happen Monday-Thursday, before noon PST. We should not be shipping anything after noon PST 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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:254cdefb-9532-46cb-b4ac-84c3df97d6af]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11814", "fixedVersions": [], "id": "11814", "issueType": "Sub-task", "key": "RAZOR-1035", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before noon PST) (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7c57528d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix87:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3484_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959249312"}], "description": "(Initial planned release date: 2018-01-10)\n\nProcedure 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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11635", "fixedVersions": [], "id": "11635", "issueType": "Sub-task", "key": "RAZOR-1034", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:254cdefb-9532-46cb-b4ac-84c3df97d6af", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6774aaf7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix7z:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3033_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959255070"}], "description": "(Initial planned release date: 2018-01-10)\n\nTag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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:254cdefb-9532-46cb-b4ac-84c3df97d6af] 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": "11590", "fixedVersions": [], "id": "11590", "issueType": "Sub-task", "key": "RAZOR-1033", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2674a533"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix7r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3362_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959260984"}], "description": "(Initial planned release date: 2018-01-10)\n\nCollaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11573", "fixedVersions": [], "id": "11573", "issueType": "Sub-task", "key": "RAZOR-1032", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@15a73762"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix7j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3821_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959266805"}], "description": "(Initial planned release date: 2018-01-10)\n\nThis 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.Z', Save as \"Introduced in X.Y.Z\", 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": "11464", "fixedVersions": [], "id": "11464", "issueType": "Sub-task", "key": "RAZOR-1031", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one? (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3520c805"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix7b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3646_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959275094"}], "description": "(Initial planned release date: 2018-01-10)\n\nFor 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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11304", "fixedVersions": [], "id": "11304", "issueType": "Sub-task", "key": "RAZOR-1030", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@643bc393"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix73:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3963_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959280442"}], "description": "(Initial planned release date: 2018-01-10)\n\nBump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11237", "fixedVersions": [], "id": "11237", "issueType": "Sub-task", "key": "RAZOR-1029", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4523ff17"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix6v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4116_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959287490"}], "description": "(Initial planned release date: 2018-01-10)\n\nUse the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11067", "fixedVersions": [], "id": "11067", "issueType": "Sub-task", "key": "RAZOR-1028", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2210652d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix6n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3580_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959294762"}], "description": "(Initial planned release date: 2018-01-10)\n\nIf 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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.7.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10906", "fixedVersions": [], "id": "10906", "issueType": "Sub-task", "key": "RAZOR-1027", "labels": [], "originalEstimate": "PT0S", "parent": "11914", "parentSummary": "RAZOR 1.7.0 2018-01-10 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release? (RAZOR 1.7.0)", "timeSpent": "PT0S", "updated": "2018-03-12T13:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2018-01-02T12:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@64159018"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzix6f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2835_*|*_5_*:*_1_*:*_669340_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5959127043"}], "description": "RAZOR 1.7.0 2018-01-10 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": "11914", "fixedVersions": ["RAZOR 1.7.0"], "id": "11914", "issueType": "Task", "key": "RAZOR-1026", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2018-03-12T13:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "RAZOR 1.7.0 2018-01-10 Release", "timeSpent": "PT0S", "updated": "2018-03-12T13:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/387.", "created": "2017-12-12T17:45:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "PR 387 merged to razor-server#master at https://github.com/puppetlabs/razor-server/commit/0ebd09299a62ec557b565cf9acfdc699b7c5b146. ", "created": "2018-01-05T12:21:00.000000"}], "components": ["Server"], "created": "2017-12-06T13:56:00.000000", "creator": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@d7e2bf0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzilqv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Dec/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1481774111_*|*_1_*:*_1_*:*_532144490_*|*_10007_*:*_1_*:*_2054142228_*|*_10009_*:*_1_*:*_3483639_*|*_5_*:*_1_*:*_1370227318_*|*_6_*:*_1_*:*_0"}], "description": "In order to support UEFI well in Razor, a couple of changes are needed:\n- query the $\\{platform} variable in iPXE and pass it to Razor, so it shows up in the hw_info for nodes. This variable can then be used for logic in templates so (for example) the correct unattend.xml is generated for Windows (as the needed settings are different for UEFI vs BIOS)\n\nTo achieve this, change the \"def ipxe_boot_url\" block in app.rb to have another variable:\n  {{vars\\[\"fact_platform\"] = \"$\\{platform}\"}}\n\n- for Windows PE from the ADK 10 there is a change in that the filename for the WinPE WIM file can no longer be non-standard in UEFI mode. In Razor this is currently set as razor-winpe.wim. This will cause a 0xc000000f error upon booting in UEFI mode. This fix this, the filename must be changed to boot.wim.\n\nTo achieve this, change line 122 in build-razor-winpe.ps1 to read:\n  copy-item $wim (join-path $output \"boot.wim\") -ErrorAction Stop\nand line 124 to read:\n{{$wim = (join-path $output \"boot.wim\")}}\n\nAlso change line 15 in tasks/windows.task/boot_wim.erb to read:\n{{initrd $\\{base}/boot.wim                    boot.wim}}\n\nFinally the unattended.xml.erb (for all Windows versions that support UEFI) will need to be updated with logic to generate the appropriate partitioning scheme based on whether the platform is UEFI of PCBIOS. I'll post the correct layout for Windows 2016 to this ticket once I have this working.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11064", "fixedVersions": ["RAZOR 1.7.0"], "id": "11064", "issueType": "New Feature", "key": "RAZOR-1025", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "resolution": "Fixed", "resolutionDate": "2018-01-22T16:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add UEFI support to Razor platform", "timeSpent": "PT0S", "updated": "2018-11-27T14:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/389.", "created": "2017-12-12T17:56:00.000000"}, {"author": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "body": "On windows 2012R2 I get\n\n\"new-psdrive: A specified logon session does not exist. It may already have been terminated\"\n\nRemoving credentials from line below and it works fine\n\nnew-psdrive -name 'i' -psprovider filesystem -root \"$($drive_path)\" -persist -credential $cred\n\n\u00a0\n\n\u00a0", "created": "2018-03-16T22:40:00.000000"}, {"author": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "body": "Damn, that means that not only the behavior between Windows PE10 is different from previous versions, but that the WinPE 10 fix for it can't be used for previous PE versions :(. We'll have to update the code to check the PE version on which it's running and only add the credential to the new-psdrive command when it detects WinPE 10.", "created": "2018-03-18T09:58:00.000000"}], "components": ["Server"], "created": "2017-12-06T13:33:00.000000", "creator": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ea04a2a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzilq7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Dec/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_534151384_*|*_10007_*:*_1_*:*_4908463183_*|*_5_*:*_1_*:*_514993_*|*_6_*:*_1_*:*_0"}], "description": "The pe_razor module in PE 2017.3 doesn't have the updates needed for Windows ADK 10 support. Some of these updates are already in the puppetlabs/razor-server repo on Github, but somehow they didn't get ported to pe_razor.\n\nThe following updates are needed:\n- use the current code in https://github.com/puppetlabs/razor-server/blob/master/build-winpe/build-razor-winpe.ps1 for build-winpe/build-razor-winpe.ps1, as this code already has the needed updates (line 74, 139)\n\n- update tasks/windows.task/second-stage.ps1.erb to account for a change in WinPE 10 when mounting an anonymous fileshare. Microsoft forgot to put some code in WinPE 10 that's needed to mount an anonymous fileshare without providing any credentials. As a result, a dummy credential must be used:\nchange line 23 (new-psdrive -name 'i' -psprovider filesystem -root \"$($drive_path)\" -persist)\nto the following:\n$pass = \"password\" | ConvertTo-SecureString -AsPlainText -Force\n$cred = New-Object System.Management.Automation.PSCredential('user', $pass)\nnew-psdrive -name 'i' -psprovider filesystem -root \"$($drive_path)\" -persist -credential $cred\n\n(this change should be regression tested against older ADK's, but it should work there too)", "environment": "PE 2017.3.1 with builtin pe_razor module", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11463", "fixedVersions": ["RAZOR 1.7.0"], "id": "11463", "issueType": "Bug", "key": "RAZOR-1024", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "resolution": "Fixed", "resolutionDate": "2018-02-07T13:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "pe_razor needs updates for Windows ADK 10 support", "timeSpent": "PT0S", "updated": "2018-03-18T09:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Blocked 'til I know which PE versions need updating.", "created": "2017-11-29T12:34:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Added to Irving+ docs.", "created": "2017-12-06T16:40:00.000000"}], "components": ["Server"], "created": "2017-11-29T12:32:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@44bfb12d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzigun:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13480_*|*_5_*:*_1_*:*_8279188062_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1871247_*|*_10005_*:*_2_*:*_617837133"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11571", "fixedVersions": ["RAZOR 1.7.0"], "id": "11571", "issueType": "Sub-task", "key": "RAZOR-1023", "labels": [], "originalEstimate": "PT0S", "parent": "11634", "parentSummary": "`repo_file` does not work with repos with remote source", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2017-12-06T16:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Add repo_file and repo_file_contents to template helpers", "timeSpent": "PT0S", "updated": "2018-03-14T13:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/382.", "created": "2017-11-28T18:19:00.000000"}], "components": ["Server"], "created": "2017-11-28T12:50:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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 a repo is created with the {{url}} argument, a node bound to a policy using e.g. the {{vmware_esxi}} task will retrieve a non-empty result from `http://<razor-server>:8150/svc/file/<node-number>/boot.cfg`."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3e9b2cd7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzifxb:"}, {"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/Nov/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_4651453273_*|*_1_*:*_1_*:*_19744313_*|*_10007_*:*_1_*:*_92051945_*|*_10009_*:*_1_*:*_3475009_*|*_5_*:*_1_*:*_1370232846_*|*_6_*:*_1_*:*_0"}], "description": "The {{repo_file}} function, accessible by tasks, currently only looks for local files in the repo directory. This works fine when the repo is created with the {{iso_url}} argument, but not when it's using a remote source via the {{url}} argument.\n\nThe fix is for this function is to download from a remote source when {{url}} is set, otherwise use the current behavior of using a local source's contents.\n\nThis affects these stock tasks:\n- ESXi\n- Debian", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11634", "fixedVersions": ["RAZOR 1.7.0"], "id": "11634", "issueType": "Bug", "key": "RAZOR-1022", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-01-22T16:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "`repo_file` does not work with repos with remote source", "timeSpent": "PT0S", "updated": "2018-06-22T14:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Visible here: https://puppet.atlassian.net/secure/RapidBoard.jspa?rapidView=623&view=planning&selectedIssue=RAZOR-1017", "created": "2017-10-31T11:19:00.000000"}], "components": [], "created": "2017-10-30T16:31:00.000000", "creator": "557058:5aed1ed3-f3b3-4dd3-bebb-5b3bf9907bc5", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@66145a34"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzhvof:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/Oct/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_67651168_*|*_6_*:*_1_*:*_0"}], "description": "This ticket is just to verify that the Create Ticket link in https://confluence.puppetlabs.com/display/ENG/Maintenance is up to date. [http://24.media.tumblr.com/tumblr_m32m03lv8J1qivhiio1_400.gif] and close this ticket as proof that it made it to the correct triage board!", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11063", "fixedVersions": [], "id": "11063", "issueType": "Bug", "key": "RAZOR-1017", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:5aed1ed3-f3b3-4dd3-bebb-5b3bf9907bc5", "resolution": "Done", "resolutionDate": "2017-10-31T11:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Triage Test", "timeSpent": "PT0S", "updated": "2017-10-31T11:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:69964973-dc59-4b74-99dd-4fad2c619cad] Could you post some screenshots or logs to this ticket? I don't have access to a machine with those specs here, so I'm kind of flying blind when it comes to fixing stuff like this.", "created": "2018-02-14T16:30:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "This ticket has not been updated in some time and is now being closed due to inactivity. This isn\u2019t necessarily a statement that this ticket isn\u2019t important - other issues may have demanded precedence since it was filed, or it may have simply slipped through the cracks. If any viewer/watcher feels closing this ticket is an error, please re-open it and add a comment explaining. Our apologies in advance for any mistake on this.", "created": "2019-04-18T10:26:00.000000"}], "components": ["Microkernel"], "created": "2017-10-25T01:55:00.000000", "creator": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@56d6655b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzhq4n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9732885972_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_36953759040"}], "description": "After running facter and attempting to shut down, systemd starts moaning about being unable to unmount filesystems and when it hits the reboot command, the system simply hangs instead and must be manually power-cycled to continue the build.\n\nThis only occurs on the Optiplex 790 model (so far).\n", "environment": "microkernel 008 running on a Dell Optiplex 790 in BIOS boot mode.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11417", "fixedVersions": [], "id": "11417", "issueType": "Bug", "key": "RAZOR-1016", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "resolution": "Cannot Reproduce", "resolutionDate": "2019-04-18T10:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "microkernel 008 doesn't reboot on Dell Optiplex 790", "timeSpent": "PT0S", "updated": "2019-04-18T10:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I've updated the example and added mention of the {{clear}} metadata function that hooks can use, which was absent. If there's more that can be added or should be clarified, let me know. The wiki is also editable, so feel free to tweak as needed.", "created": "2017-10-17T10:56:00.000000"}, {"author": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "body": "That'll work. Thanks for the fast turnaround [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] (y)\nAlso didn't realize I could edit the Wiki, thanks for the reminder.", "created": "2017-10-17T11:13:00.000000"}], "components": ["DOCS"], "created": "2017-10-17T09:32:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@32b584eb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzhilz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Oct/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5001695_*|*_5_*:*_1_*:*_12623478286_*|*_6_*:*_1_*:*_0"}], "description": "Creating node metadata from a Razor hook is a really useful thing; however, there isn't any documentation on how to do that.\n\nThe Razor Wiki shows an example, but it's either wrong or not intended for updating Node Metadata.\n\nA hook should output a JSON blob to STDOUT with a metadata hash that contains an update key in it. Like so:\n\n{code}\ncat <<EOF\n{\n  \"node\": {\n    \"metadata\": {\n      \"update\": {\n        \"some_new_key\": \"$value\"\n      }\n    }\n  }\n}\nEOF\n{code}\n\nThe documentation here doesn't have an {{update}} key: https://github.com/puppetlabs/razor-server/wiki/Hooks#sample-hook", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11813", "fixedVersions": ["RAZOR 1.7.0"], "id": "11813", "issueType": "Bug", "key": "RAZOR-1015", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "resolution": "Fixed", "resolutionDate": "2017-10-17T10:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Clarify how to create node metadata from a hook", "timeSpent": "PT0S", "updated": "2018-03-12T13:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hi Nate, have you tried using {{\\-\\-broker\\-type}} instead of {{\\-\\-broker_type}}? Because what I think is happening is that it's assuming that string is a positional argument since {{--broker_type}} isn't a proper flag to pass to the CLI.", "created": "2017-10-09T11:17:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "-I do agree the behavior is bizarre (it still assigned the {{broker_type}} value), so I'll take a look.-\n\nThe behavior actually makes some sense", "created": "2017-10-09T11:18:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Marking this as a duplicate of\u00a0RAZOR-842, since I believe the fix in that ticket should resolve this one as well.", "created": "2018-03-12T13:35:00.000000"}], "components": ["Client"], "created": "2017-10-05T22:01:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@78181b00"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "Customer Feedback"}, {"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|hzh9if:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Oct/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4804821280_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_8816070342"}], "description": "When creating a broker from the razor-client gem, sometimes the name ends up being a flag argument.\n\nFor example:\n\n{code}\n[root@razor.lab.corp.net # ~ ] razor create-broker --name labpuppet --broker_type corp-puppet -c ntpdate_server=ntp.lab.corp.net -c puppet_server=puppet.lab.corp.net\nFrom https://localhost:8151/api/collections/brokers/--broker_type:\n \n           name: --broker_type\n    broker_type: corp-puppet\n  configuration:\n                      ntpdate_server: ntp.lab.corp.net\n                       puppet_server: puppet.lab.corp.net\n       policies: 0\n        command: https://localhost:8151/api/collections/commands/38\n{code}\n\nNote the name of broker that got made: *--broker_type*\n\n----\n\nrazor-client gem: *1.6.1*\nPuppet Enterprise: *2017.2.3*", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11632", "fixedVersions": [], "id": "11632", "issueType": "Bug", "key": "RAZOR-1014", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "resolution": "Duplicate", "resolutionDate": "2018-03-12T13:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor Client: create-broker arguments getting mixed up with the name of the broker", "timeSpent": "PT0S", "updated": "2018-03-12T13:36:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "body": "Possibly a duplicate of RAZOR-783 \n\nAlthough this could be solved with a docs or wiki update showing how to specify a range of MAC's using the new {{has_macaddress_like}} matcher.", "created": "2017-10-05T15:42:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing in favor of RAZOR-783.", "created": "2018-02-07T13:25:00.000000"}], "components": [], "created": "2017-10-04T09:35:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1680cd4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzh807:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10903850795_*|*_6_*:*_1_*:*_0"}], "description": "There should be a way to specify a range of MAC addresses in a tag. Right now, you can only make a list of MAC addresses that could match.\n\nFor workflows that use pre-defined MAC pools to denote different operating systems, it is very cumbersome to make a tag that has dozens or hundreds of possible addresses.\n\nFor example, we have pre-defined MAC pools for Windows, RedHat, and ESXi:\n\n||OS||MAC Range||\n|Linux|00:25:B5:00:00:00 - 00:25:B5:00:00:63|\n|Windows|00:25:B5:00:01:00 - 00:25:B5:00:01:63|\n|ESXi|00:25:B5:00:02:00 - 00:25:B5:00:02:63|\n\nThis could be done with some new operator like {{mac_range}} or even a regular expression on the MAC address fact.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11416", "fixedVersions": [], "id": "11416", "issueType": "Bug", "key": "RAZOR-1013", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "resolution": "Duplicate", "resolutionDate": "2018-02-07T13:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Need the ability to specify a large range of MAC address in a tag", "timeSpent": "PT0S", "updated": "2018-02-07T13:25:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2017-10-04T07:05:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@489792ed"}, {"fieldName": "CS Business Value", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "3 - $$$$"}, {"fieldName": "CS Frequency", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "1 - 1-5% of Customers"}, {"fieldName": "CS Impact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Razor is uncommonly used. No doubt this would be a nice improvement though."}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "CS Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Minor"}, {"fieldName": "CS Severity", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "2 - Annoyance"}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:2"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Mar/18"}], "description": "Using the razor-client CLI is tedious. There are a large number of subcommands each with their own set of flags and options. Shipping a shell completion script would greatly increase the usability of the CLI.\n\nBetter yet, if the server could supply a shell completion script that could be cached for a certain period of time, that would prevent the client from becoming more thick than it needs to be. Or, if not a full completion script, the client could potentially query the server for the API and use that to generate its own completion script.\n\n*In Scope*\n * Update the server to ship a reasonable shell completion script via e.g. /svc/cli/bash-completion.\n * Update the client to request this alongside the API.\n * [Optional] Cache the shell completion script for future uses to save bandwidth.\n * [Optional] Cache the API payload to save bandwidth.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11588", "fixedVersions": [], "id": "11588", "issueType": "Improvement", "key": "RAZOR-1012", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create shell completion scripts for razor-client gem", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] I'll add some info to this ticket so we can make these updates, including exact paths.", "created": "2018-02-14T16:27:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Feel free to assign to me when you're done adding details. Thanks!", "created": "2018-02-14T17:05:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] I've updated the description with some answers.", "created": "2018-03-09T20:24:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Fixed in 20173. and later.", "created": "2018-04-20T13:49:00.000000"}], "components": ["DOCS"], "created": "2017-10-03T14:57:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3ee823d6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzh7h3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11586640144_*|*_3_*:*_1_*:*_2000850934_*|*_5_*:*_1_*:*_337170316_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_6222_*|*_10006_*:*_1_*:*_3526011223_*|*_10005_*:*_1_*:*_76053858"}], "description": "The docs here needed updated: [https://docs.puppet.com/pe/latest/razor_windows_install.html#build-a-winpe-image]\n * Step 2 says to copy the build-winpe directory from the Razor server but doesn't say where that is or how to get it. ({{/opt/puppetlabs/server/apps/razor-server/share/razor-server/build-winpe}})\n * Step 2 says to \"use this archive\" with a link to a zip on AWS. That zip is outdated and needs to be updated. (Done, no change needed here.)\n * Step 4 says to put {{*.inf}} files in the build-winpe directory but doesn't say where that directory is. (Should be the `extra-drivers` directory inside the build-winpe folder above.\n * Step 4 should clarify weather it's okay or not to put directories containing {{*.inf}} files in there (it seems to be okay and is common for vendors to ship larges folders of inf files) (This will search subdirectories too.)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11812", "fixedVersions": [], "id": "11812", "issueType": "Task", "key": "RAZOR-1011", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "resolution": "Fixed", "resolutionDate": "2018-04-20T13:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS: 'Build a WinPE image docs' need updated", "timeSpent": "PT0S", "updated": "2018-04-24T11:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit fdf5f00316497969affceb40cbed1629c87420a4.", "created": "2018-03-09T20:26:00.000000"}], "components": ["DOCS", "Server"], "created": "2017-09-26T16:01:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@39b02054"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzh1q7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Mar/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_12187476625_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2001642476_*|*_10005_*:*_1_*:*_5718"}], "description": "Tags that match on MAC addresses are currently case-sensitive. This caused quite a bit of head scratching when we were trying to figure out why nodes weren't matching our policies.\n\nAs I can't think of a reason to be case sensitive, I think it would make sense to have Razor (or tags really) not care about the case of MAC addresses.\n\n{code}[\"has_macaddress\", \"DE:EA:DB:EE:F0:00\", \"de:ea:db:ee:f0:01\"]{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11850", "fixedVersions": [], "id": "11850", "issueType": "Improvement", "key": "RAZOR-1010", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "resolution": "Fixed", "resolutionDate": "2018-03-09T20:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "MAC address matching should be case insensitive", "timeSpent": "PT0S", "updated": "2018-03-09T20:26:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "There was some confusion, reopening. :)", "created": "2018-03-21T17:34:00.000000"}], "components": [], "created": "2017-09-25T16:56:00.000000", "creator": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3e35e602"}, {"fieldName": "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": "RAZOR-991"}, {"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|hzl1b3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10710373_*|*_3_*:*_1_*:*_347136953_*|*_5_*:*_1_*:*_22239_*|*_6_*:*_2_*:*_4038541_*|*_10006_*:*_2_*:*_17862251332"}], "description": "We should have only one repo for both razor-client and pe-razor-client.\n Ultimately, this should live in razor-vanagon, once vanagon knows how to build gems.", "epicLinkSummary": "Spike on razor packaging process", "estimate": "PT0S", "externalId": "11415", "fixedVersions": ["RAZOR 1.8.1"], "id": "11415", "issueType": "Improvement", "key": "RAZOR-1075", "labels": [], "originalEstimate": "PT0S", "parent": "11584", "parentSummary": "Spike on razor packaging process", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "resolution": "Fixed", "resolutionDate": "2018-04-24T15:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Consolidate razor-client and pe-razor-client", "timeSpent": "PT0S", "updated": "2018-04-24T15:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "body": "If we had update-policy-configuration and update-node-configuration commands, this would be achievable.\u00a0 Alternatively, move \"policy\" into metadata and let it be edited easily via the existing update-node-metadata et al.\n\n\u00a0", "created": "2018-02-27T00:57:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:69964973-dc59-4b74-99dd-4fad2c619cad]\u00a0What would policy configuration or node configuration be? We have node metadata, as you specified, I'm not sure how configuration would be different.", "created": "2018-02-27T11:00:00.000000"}, {"author": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] the configuration from the JSON when you perform a create-policy.\u00a0 I commented because I came across a similar-ish situation where I needed to alter the hostname_pattern and discovered I couldn't without recreating a new policy.\n\n$ razor policies policy1 configuration\n\n$ razor nodes node1\n\nOnly the 'metadata' branch is editable, not the rest of the configuration.\n\nBinding a node to a policy as requested by [~accountid:557058:59f72e60-2599-4fa1-a8b1-1d5a9ff792ca] could be done as described yesterday with:\n\n$ razor update-node-configuration --node node1 --key policy --value new_policy\n\n\u00a0", "created": "2018-02-27T21:09:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I'll accept this for now. Adding an `update-node-hostname-pattern` command would be a solution that's more to our design approach of small, focused commands. Binding to a policy by hand seems easier than a policy with a large number of mac addresses (or complex regular expressions), so it might be worth considering this feature. It'd also add some feature parity with products in the same space.\n\nEDIT: This ticket (https://puppet.atlassian.net/browse/RAZOR-379)\u00a0should handle adding the `update-node-hostname-pattern` command.", "created": "2018-05-31T23:34:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this in favor of RAZOR-379 per the comment thread. If the original functionality described here is still needed, please reopen.", "created": "2019-12-02T20:50:00.000000"}], "components": ["Server"], "created": "2017-09-20T06:20:00.000000", "creator": "557058:59f72e60-2599-4fa1-a8b1-1d5a9ff792ca", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7dbf71a9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:1"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Sep/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12740689534_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_9180447332_*|*_10005_*:*_1_*:*_47513857366"}], "description": "To manually register and bind a node to a policy so an out of band kickstart template can be rendered with the appropriate parameters prefilled.\nFor instances where remote servers outside of the managed network and need to provision over the internet, and to integrate into an existing environment\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11811", "fixedVersions": [], "id": "11811", "issueType": "New Feature", "key": "RAZOR-1009", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:59f72e60-2599-4fa1-a8b1-1d5a9ff792ca", "resolution": "Duplicate", "resolutionDate": "2019-12-02T20:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Manually bind a pre-registered razor node to a policy", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Super simple ticket, changed the priority to \"Major\" since it will lead to a failed install for users with a more strict default file permissions setting.", "created": "2018-03-09T20:27:00.000000"}], "components": [], "created": "2017-09-19T09:22:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@b3abfdd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xw:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Mar/18"}], "description": "h2. Problem\n\nWhen installing pe_razor on a server with a UMASK of {{027}}, the Java KS and TS stores won't be readable by the razor user which causes the HTTPS API service to not start.\n\nHere's the error message I saw in the razor logs:\n\n{code}\n10:56:25,104 ERROR [org.apache.tomcat.util] (MSC service thread 1-1) JBWEB003002: Failed to load keystore type JKS with path /opt/puppetlabs/server/data/razor-server/pe-razor.ks due to /opt/puppetlabs/server/data/razor-server/pe-razor.k s (Permission denied)\n10:56:25,104 ERROR [org.apache.coyote.http11] (MSC service thread 1-1) JBWEB003043: Error initializing endpoint: java.io.FileNotFoundException: /opt/puppetlabs/server/data/razor-server/pe-razor.ks (Permission denied)\n        at java.io.FileInputStream.open0(Native Method) [rt.jar:1.8.0_141]\n        at java.io.FileInputStream.open(FileInputStream.java:195) [rt.jar:1.8.0_141]\n        at java.io.FileInputStream.<init>(FileInputStream.java:138) [rt.jar:1.8.0_141]\n        at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getStore(JSSESocketFactory.java:368) [jbossweb-7.2.0.Final.jar:7.2.0.Final]\n        at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getKeystore(JSSESocketFactory.java:293) [jbossweb-7.2.0.Final.jar:7.2.0.Final]\n        at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getKeyManagers(JSSESocketFactory.java:505) [jbossweb-7.2.0.Final.jar:7.2.0.Final]\n        at org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:442) [jbossweb-7.2.0.Final.jar:7.2.0.Final]\n        at org.apache.tomcat.util.net.jsse.JSSESocketFactory.createSocket(JSSESocketFactory.java:162) [jbossweb-7.2.0.Final.jar:7.2.0.Final]\n        at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:967) [jbossweb-7.2.0.Final.jar:7.2.0.Final]\n        at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:174) [jbossweb-7.2.0.Final.jar:7.2.0.Final]\n        at org.apache.catalina.connector.Connector.init(Connector.java:982) [jbossweb-7.2.0.Final.jar:7.2.0.Final]\n        at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:273) [jboss-as-web-7.2.x.slim.incremental.16.jar:7.2.x.slim.incremental.16]\n        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.4.GA.jar:1.0.4.GA]\n        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.4.GA.jar:1.0.4.GA]\n        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_141]\n        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_141]\n        at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_141]\n \n10:56:25,121 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC00001: Failed to start service jboss.web.connector.https: org.jboss.msc.service.StartException in service jboss.web.connector.https: JBAS018007: Error starting  web connector\n        at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:277)\n        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.4.GA.jar:1.0.4.GA]\n        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.4.GA.jar:1.0.4.GA]\n        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_141]\n        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_141]\n        at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_141]\nCaused by: LifecycleException:  JBWEB000023: Protocol handler initialization failed\n        at org.apache.catalina.connector.Connector.init(Connector.java:984)\n        at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:273)\n        ... 5 more\n{code}\n\nHere's where the keystores are being created:\n\nhttps://github.com/puppetlabs/puppetlabs-pe_razor/blob/b37afe3d2fe9090443b4f0043fe529380d95e1f1/manifests/server/torquebox.pp#L25-L40\n\nh2. Solution\nThere should be a file resource for those keystores that manage the {{mode}} to be {{0644}}.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11587", "fixedVersions": [], "id": "11587", "issueType": "Bug", "key": "RAZOR-1008", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Java KS and TS stores should have their permissions managed", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2017-09-19T08:18:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4887e674"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzgsvz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1118938119_*|*_6_*:*_1_*:*_0"}], "description": "The YUM repo that gets made by the pe_razor module doesn't include a description or {{name}} key. This causes the following warning to be shown during all YUM operations:\n\n{code}\nRepository 'pe-razor' is missing name in configuration, using id\n{code}\n\nThe problem comes from this section of code:\n\nhttps://github.com/puppetlabs/puppetlabs-pe_razor/blob/8ce6a2595e4133f862417adb81420f3bfd4922f5/manifests/server/repo.pp#L39-L44\n\nThat yumrepo should include the {{descr}} attribute as shown below:\n\n{code}\nyumrepo { 'pe-razor':\n  baseurl  => \"file://${target}\",\n  descr    => 'Puppet Enterprise Razor Packages',\n  enabled  => 1,\n  gpgcheck => 0,\n  require  => Exec['unpack the razor repo'],\n}\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11056", "fixedVersions": [], "id": "11056", "issueType": "Bug", "key": "RAZOR-1006", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "resolution": "Fixed", "resolutionDate": "2017-10-02T07:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Repository 'pe-razor' is missing name in configuration", "timeSpent": "PT0S", "updated": "2017-10-02T07:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The docs have been updated to point to -008.", "created": "2018-02-14T16:18:00.000000"}], "components": ["DOCS"], "created": "2017-09-17T12:47:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@79689f13"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzgr2f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12976236780_*|*_6_*:*_1_*:*_0"}], "description": "The link to the microkernel at https://docs.puppet.com/pe/latest/razor_install.html#install-razor-while-youre-offline points to the {{007}} build. But the {{008}} build is downloaded when the {{pe_razor}} class is put on a node using PE 2017.2.3.\n\nThe pe_razor module dynmaically builds this link:\nhttps://pm.puppetlabs.com/puppet-enterprise-razor-microkernel-2017.2.3.tar\n\nWhich ultimately redirects to:\nhttps://s3-us-west-2.amazonaws.com/razor-releases/microkernel-008.tar", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11236", "fixedVersions": [], "id": "11236", "issueType": "Bug", "key": "RAZOR-1004", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "resolution": "Cannot Reproduce", "resolutionDate": "2018-02-14T16:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Link to microkernel is outdated", "timeSpent": "PT0S", "updated": "2018-02-14T16:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] Can we clean this up a bit in our PE docs?", "created": "2018-02-14T16:16:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3] I took a stab at these updates. Would you mind verifying?\u00a0\n\nI can't link directly to that topic because it's nested\u00a0so deep, but this gets you close: [http://www-aio01-dev.aws.puppetlabs.com/docs/pe/2017.3.3/razor/installing_razor.html#install-the-razor-server]\u00a0(Must be on the internal network or VPN to view.)", "created": "2018-02-23T17:13:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3] Could you take a look at this so we can resolve it?", "created": "2018-03-09T20:04:00.000000"}, {"author": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "body": "Looks great (y) Thanks for making the update.", "created": "2018-03-12T09:42:00.000000"}], "components": ["DOCS"], "created": "2017-09-17T12:24:00.000000", "creator": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@44d654bf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "Manual Test"}, {"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|hzgr27:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12977516004_*|*_3_*:*_1_*:*_10577924_*|*_10009_*:*_1_*:*_1449858388_*|*_5_*:*_2_*:*_1778973_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_770429173"}], "description": "https://docs.puppet.com/pe/latest/razor_install.html#install-razor-while-youre-offline\n\nThere are two parameters that should be set when installing razor using the {{pe_razor}} class while offline:\n\n* {{pe_tarball_base_url}}\n* {{microkernel_url}}\n\nh2. Problem\n\nThe current examples of valid values for those parameters are unclear and misleading.\n\nShould I put the full path to the {{.tar.gz}} for the pe_tarball?\nShould I put the full path to the {{.tar}} for the microkernel?\n\nh2. Solution\n\nRewrite and/or reformat the examples in that offline install section to show, very clearly, example values that will work. And clearly point out the best place to stage those files locally and how to structure the directories:\n\n* {{pe_tarball_base_url}}: This should be the full path to a directory that contains {{<PE_VERSION>/<PE_INSTALLER>.tar.gz}}. Not the full path to the {{.tar.gz}}.\n* {{microkernel_url}}: This should be the full path to the {{microkernel-<VERSION>.tar}}.\n\nExample:\n\n||Parameter||Value||\n|pe_tarball_base_url|{{file:///tmp/razor_files}}|\n|microkernel_url|{{file:///tmp/razor_files/microkernel-008.tar}}|\n\n{quote}NOTE: When using local paths, there should be 3  forward slases ({{/}}) in {{file:///}}{quote}\n\nThis assumes that '{{/tmp/razor_files}}' is a directory as shown below:\n\n{code}\n[root@razor ~]# mkdir -p /tmp/razor_files/2017.2.3/\n\n# Copy the microkernel and the PE installer as shown below\n\n[root@razor ~]# tree  /tmp/razor_files/\n/tmp/razor_files/\n\u251c\u2500\u2500 2017.2.3/\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 puppet-enterprise-2017.2.3-el-7-x86_64.tar.gz\n\u2514\u2500\u2500 microkernel-008.tar\n\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11053", "fixedVersions": ["RAZOR 1.7.0"], "id": "11053", "issueType": "Bug", "key": "RAZOR-1005", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "resolution": "Fixed", "resolutionDate": "2018-03-12T12:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Offline install parameter examples are misleading", "timeSpent": "PT0S", "updated": "2018-03-12T13:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "[~accountid:557058:028b90a0-3bb6-4d61-9018-7a55445952d5] thanks for the detailed information", "created": "2017-08-31T13:43:00.000000"}, {"author": "557058:028b90a0-3bb6-4d61-9018-7a55445952d5", "body": "Hi [~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0], you are welcome.\nI wasn't actually sure the \"Release Notes\" field was the right one to use, thank you for moving my obnoxious description of the issues in the right place. :)", "created": "2017-08-31T15:03:00.000000"}, {"author": "557058:028b90a0-3bb6-4d61-9018-7a55445952d5", "body": "In a scenario where an existing DHCP server could not be reconfigured to provide support to razor, this could be useful:\nhttp://ipxe.org/gsoc.\nIt states that it should be possible to use dnsmasq as a proxyDHCP, so that _\"the \u201creal\u201d DHCP server provides the IP address, and the ProxyDHCP server provides the configuration options.\"_\n\nThis possibility is also mentioned within dnsmasq man page:\nhttp://www.thekelleys.org.uk/dnsmasq/docs/dnsmasq-man.html", "created": "2017-08-31T18:09:00.000000"}, {"author": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "body": "Also, if the machine running Razor is on a different subnet, IP Helpers can be configured in the network gear. If the customer is already using a centralized DHCP server, they are already using IP Helpers to ferry DHCP requests across the routed network to the DHCP server and back. For the subnet requiring Razor functionality, simply add a 2nd IP Helper in the network switch/router config, pointing to the Razor IP. Then make sure the Razor machine doesn't hand out IP addresses over DHCP but only hands out the additional DHCP options (for the boot config). The client will then get it's IP address from the centralized DHCP server and the boot config from Razor.", "created": "2017-09-01T09:50:00.000000"}], "components": ["DOCS"], "created": "2017-08-31T09:28:00.000000", "creator": "557058:028b90a0-3bb6-4d61-9018-7a55445952d5", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@36973e1b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:z"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "31/Aug/17"}], "description": "PREREQUISITES ([https://docs.puppet.com/pe/latest/razor_prereqs.html])\n - -Docs are RHEL centric (note the use of yum).- (Note: PE only supports installation on EL, so this is not an issue.)\n\n - Prerequisites are unclear: razor needs a DHCP server and a TFTP server, so state it clearly.\n\n - On a similar note the docs state that _\"Running a second DHCP server on your company\u2019s network could bring down the network or replace a server with a fresh installation\"_ but do not not provide any explanation on what to do about it and how to approach the issue (e.g. use an existing DHCP server with TFTP capabilities within the infrastructure by doing X and Y, use an existing DHCP server with a separate TFTP server installed on the Razor server by doing X, Y and Z). Propose scenarios at least if the configuration options are too \"dynamic\".\n\n*Selinux:*\n # _\"Disabling SELinux is highly insecure and should only be done for testing purposes\"_ Is the assumption here that we are deploying this in a production environment and that selinux must be disabled only for short periods of time? Would a server with a lower security posture invalidate compliance?\n # _\"Another option is to craft an enforcement rule for SELinux that will enable PXE boot but will not completely disable SElinux.\"_. As this is potentially a standalone box, could you provide the rule or come up with the appropriate security context that allows the component(s) blocked by selinux to work?\n\nINSTALLATION DOCS ([https://docs.puppet.com/pe/latest/razor_install.html])\n *Technical issue:*\n - Automatic installation prone to errors, as the script downloading the microkernel can hang forever, specifically when the connection is degraded and the download hangs; also, said script creates a random directory every time it runs so resuming an interrupted download by forcing additional puppet runs is not possible. My experience is that downloading the microkernel from amazon S3 west coast servers routinely slows down to a crawl (I am in London) and wget does not seem to retry as it is supposed to.\n\n*Docs issue:*\n - _\"The download can take several minutes.\"_ The download can take hours, I would suggest adding a section that explains that it could be beneficial to test the download speed from amazon S3 befero deciding for an online or an offline installation. Also a section explaining how to check for the status of the download (a watch ls -lh in the right directory should do) and how big the the microkernel file to be downloaded is.\n\n - Offline installation instructions state to download and unpack the microkernel somewhere else rather than under /opt/puppetlabs/server/data/razor-server/repo/microkernel/.\n While there can be a sensible explanation for that (e.g. so that the operator does not break the razor server), this is not explained properly.\n\n - -The link to the microkernel is outdated, as it points to microkernel-007.tar, the current release is 008.- (Note: This is fixed.)\n\n - The offline installation instructions do not mention to do a puppet run once the pe_razor class parameters have been set from the PE console to point to the manually-deployed microkernel. Also, are we assuming the agent can / is still able to trigger puppet runs? Shall we disable the agent temporarily until the razor server is fully deployed?\n\n - Test the Razor configuration will fail with a certificate error (hostnames are fictional):\n\n{noformat}wget https://razor.foobar.vlan:8151/api -O test.out\n\nERROR: cannot verify razor.foobar.vlan\u2019s certificate, issued by \u201c/CN=Puppet Enterprise CA generated on master.foobar.vlan at +2017-07-20 14:10:23 +0000\u201d:\n  Unable to locally verify the issuer\u2019s authority.\nTo connect to razor.foobar.vlan insecurely, use \u2018--no-check-certificate\u2019.\n{noformat}\nThis could be \n *wget --no-check-certificate [https://razor.foobar.vlan:8151/api] -O - | python -m json.tool*\n - Installation of the client. Can we call it command line tool? Installing a client on a server does not make sense semantically. Alternatively tell me every time this is mentioned that the razor client is a command line tool to interact with the razor server.\n\n - Installation instructions are wrong as *gem install pe-razor-client* will output an error. It should be - as in the offline install instructions */opt/puppetlabs/puppet/bin/gem install pe-razor-client*\n\n - In a similar fashion it is not possible to invoke razor directly as /opt/puppetlabs/puppet/bin/ is not in the path: *-bash: razor: command not found*\n\nWe should maybe create a symlink for the razor client within /opt/puppetlabs/bin ?\n cd /opt/puppetlabs/bin\n ln -s /opt/puppetlabs/puppet/bin/razor razor\n\nWhile we are at it, why don't we puppetize the installation of the razor client as well and amend the docs in case one wants to install the razor client on a different node or a developer's workstation?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11849", "fixedVersions": [], "id": "11849", "issueType": "Improvement", "key": "RAZOR-1003", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:028b90a0-3bb6-4d61-9018-7a55445952d5", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor installation docs make assumptions, gloss over install scenarios.", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hey Howard, thanks for pointing this out! I've modified the wiki to reflect that the packages should be PC1 packages and removed the link to the old page. I'll close this ticket, feel free to reopen if [the change I made|https://github.com/puppetlabs/razor-server/wiki/Installation/_compare/f181ee51ee5feb78be2b351353ccc366219b5c4e...c7b61dba0a38e0d99fc04df6fd5d4c8b7d81c024] is insufficient.", "created": "2017-08-15T19:26:00.000000"}], "components": ["DOCS"], "created": "2017-08-15T02:56:00.000000", "creator": "557058:7b91651e-05ea-4237-8f1d-8cc9d4601e75", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@26626dff"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzfzv3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Aug/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_59429001_*|*_6_*:*_1_*:*_0"}], "description": "On https://github.com/puppetlabs/razor-server/wiki/Installation#installing-packages there is a link to the puppetlabs site, purporting to describe how to get the relevant package repos set up to install razor. I guess somewhere along the line something has changed, because the repos described on the linked page don't contain razor. For me, the following worked:\n\n{{    wget https://apt.puppetlabs.com/puppetlabs-release-pc1-xenial.deb\n    dpkg -i puppetlabs-release-pc1-xenial.deb}}\n\nThis release-pc1 repo is not mentioned on the linked page at all.", "environment": "website", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10896", "fixedVersions": [], "id": "10896", "issueType": "Bug", "key": "RAZOR-1002", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:7b91651e-05ea-4237-8f1d-8cc9d4601e75", "resolution": "Fixed", "resolutionDate": "2017-08-15T19:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Package installation instructions are outdated", "timeSpent": "PT0S", "updated": "2017-08-15T19:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2017-05-04T15:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5487f2d8"}, {"fieldName": "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": "RAZOR-794"}, {"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|hyk3xv:y"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}], "description": "In order for Razor to fully move off of TorqueBox, we'll need to stop using some of TorqueBox's libraries.\n\nRequirements:\n- Resilient to server restarts (using database is an option)\n- Single-threaded for running hooks\n- Multi-threaded for sequel instance execution\n- Scheduling for IPMI cron job\n\nSome options:\n- Delayed Job\n-- Requires daemon process\n- Sidekiq\n-- Costly for enterprise\n- Resque\n- Self-built\n- RabbitMQ\n- Apache Kafka", "epicLinkSummary": "Migrate Razor off Torquebox", "estimate": "PT0S", "externalId": "11810", "fixedVersions": [], "id": "11810", "issueType": "Story", "key": "RAZOR-1001", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": "11241", "parentSummary": "Migrate Razor off Torquebox", "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Migrate to new message queue and scheduling system", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:f3225c5b-a484-4dfc-b91d-16cbd9f774ec", "body": "One of my customers (prospect) has exactly the same requirement. It would be good to have this feature. ", "created": "2017-08-28T07:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:35060490-aa27-40a2-b587-eca7672140c8] Does this still seem like a\u00a0valid problem and worthwhile solution?", "created": "2018-02-12T14:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Accepting for now, but this feels more like a Spike ticket. I'll leave it as \"Normal\" priority and keep available for later investigation.", "created": "2018-03-09T20:47:00.000000"}], "components": [], "created": "2017-05-03T11:45:00.000000", "creator": "557058:35060490-aa27-40a2-b587-eca7672140c8", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@239cdb17"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:x"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Aug/17"}], "description": "I was having a discussion with a Razor user from way-back. They have a bunch of sites, networks, etc. Some of these sites can't use DHCP in some networks for $reasons.  That said, they can do most anything else (have a tftp server, route externally, etc.)\n\nWe talked about the possibility of creating an ipxe ISO so that if DHCP isn't available the system could still be booted with a thumb drive, etc. and have it work.\n\nThis seems like it's in the ballpark of the solution, but would need some engineering work and validation (plus, it would need to be an ISO): https://github.com/puppetlabs/razor-server/wiki/Common-problems-and-solutions#virtualbox-ipxe-requires-manual-restarts-during-os-installation\n\n", "environment": "x86, x86_64 hardware", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10894", "fixedVersions": [], "id": "10894", "issueType": "New Feature", "key": "RAZOR-1000", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:35060490-aa27-40a2-b587-eca7672140c8", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support for booting off an ISO as entry point for Razor/Puppet workflow", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] Is {{has_macaddress_like}} documented anywhere? I can't find it in the razor-server repo or docs.", "created": "2017-09-25T18:14:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3] I think you might mean `has_macaddress`? \nhttps://docs.puppet.com/pe/latest/razor_tags.html#operators\n\nIf there is a `has_macaddress_like` operator, we haven't documented it. ", "created": "2017-09-26T09:05:00.000000"}, {"author": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "body": "It's called out in the description of this ticket. The first bullet point.\n\nWas that maybe a typo?\n", "created": "2017-09-26T09:11:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Ah yes, pretty sure that should be `has_macaddress`. ", "created": "2017-09-26T09:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3] [~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] There were plans to make an operator that would flexibly match against macaddresses. Some combination of the {{like}} and the {{has_macaddress}} operators. I don't see anything stopping it being added.\n\nWith that said, {{has_macaddress}} isn't a regular expression function, but the same idea would apply for matching multiple macaddresses. So that could be modified:\n\n{quote}\nIn practice, this might mean using one `has_macaddress` operator to match multiple macaddresses rather than using multiple tags that each matches a single Mac address.\n{quote}", "created": "2017-09-26T15:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Update: RAZOR-783 is the ticket for that.", "created": "2017-09-26T15:51:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] Do you know/remember the status of this ticket?", "created": "2018-03-12T13:33:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] The description for this ticket looks great to me. We can add things ad-hoc at a later date once the structure is in place.", "created": "2018-03-13T11:12:00.000000"}], "components": [], "created": "2017-04-03T13:46:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@391a64da"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzd2fz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Sep/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9769_*|*_3_*:*_1_*:*_2466884_*|*_10009_*:*_1_*:*_3699623_*|*_5_*:*_1_*:*_337095227_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3091_*|*_10005_*:*_1_*:*_32998896947"}], "description": "- Limit the number of tags in the system. Tags can be expensive to compute, so try to make the most out of the fewest tags. In practice, this might mean using the `has_macaddress` regular expression function rather than matching specific Mac address.\n- Use `url` rather than `iso-url` when creating repos. If you have a mirror hosting the files, they can be distributed straight to the node rather than having the Razor server perform all of those bandwidth needs. It may be worth using iso-url at first then monitoring bandwidth and adjusting as necessary.\n- Hook scripts all run on the same thread, synchronously, so try to avoid long- and frequent-running hook scripts to keep hook script execution performant.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11631", "fixedVersions": ["RAZOR 1.8.1"], "id": "11631", "issueType": "Task", "key": "RAZOR-999", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2018-04-20T13:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Add scalability best practices", "timeSpent": "PT0S", "updated": "2018-04-24T16:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This seems to be installing fine on RHEL 7 now. If you still encounter an issue, please file a new ticket.", "created": "2018-02-12T14:12:00.000000"}], "components": [], "created": "2017-03-13T11:57:00.000000", "creator": "557058:2ffa3d87-fcbe-4c86-9ab1-aede78ac2c68", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@33c61559"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzckqf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29042104857_*|*_6_*:*_1_*:*_0"}], "description": "Installed on RHEL 7.2, repos cloned from DVD\nResults from puppet run:\n\nrazor ~ $ puppet agent -t\nInfo: Using configured environment 'production'\nInfo: Retrieving pluginfacts\nInfo: Retrieving plugin\nInfo: Loading facts\nInfo: Caching catalog for razor.universe.local\nInfo: Applying configuration version '1489307936'\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Exec[unpack the microkernel]/returns: executed successfully\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Repo[razor]/Exec[unpack the razor repo]/returns: executed successfully\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Repo[razor]/Yumrepo[pe-razor]/ensure: created\nInfo: changing mode of /etc/yum.repos.d/pe-razor.repo from 600 to 644\nError: Could not update: Execution of '/usr/bin/yum -d 0 -e 0 -y install pe-razor-server' returned 1: Error: Package: pe-razor-server-1.5.0.358-1.pe.el7.noarch (pe-razor)\n           Requires: libarchive-devel\n You could try using --skip-broken to work around the problem\n You could try running: rpm -Va --nofiles --nodigest\nError: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Package[pe-razor-server]/ensure: change from purged to latest failed: Could not update: Execution of '/usr/bin/yum -d 0 -e 0 -y install pe-razor-server' returned 1: Error: Package: pe-razor-server-1.5.0.358-1.pe.el7.noarch (pe-razor)\n           Requires: libarchive-devel\n You could try using --skip-broken to work around the problem\n You could try running: rpm -Va --nofiles --nodigest\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Package[pe-razor-libs]/ensure: created\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/sysconfig/pe-razor-server]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/sysconfig/pe-razor-server]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/opt/puppetlabs/server/data/razor-server]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/opt/puppetlabs/server/data/razor-server]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/tasks]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/tasks]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/brokers]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/brokers]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/hooks]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/hooks]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/opt/puppetlabs/server/data/razor-server/repo]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/opt/puppetlabs/server/data/razor-server/repo]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/config-defaults.yaml]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/config-defaults.yaml]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/Exec[/bin/echo /etc/puppetlabs/razor-server/config.yaml is not used any more. Please transfer any modified configuration properties to the respective class parameter and delete this file.]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/Exec[/bin/echo /etc/puppetlabs/razor-server/config.yaml is not used any more. Please transfer any modified configuration properties to the respective class parameter and delete this file.]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/shiro.ini]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Config[razor]/File[/etc/puppetlabs/razor-server/shiro.ini]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Upgrade[razor]/File[/opt/puppet/razor/upgrade]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Upgrade[razor]/File[/opt/puppet/razor/upgrade]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Upgrade[razor]/File[/opt/puppet/razor/upgrade/upgrade.bash]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Upgrade[razor]/File[/opt/puppet/razor/upgrade/upgrade.bash]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Upgrade[razor]/File[/opt/puppet/razor/upgrade/pe-code-migration.rb]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Upgrade[razor]/File[/opt/puppet/razor/upgrade/pe-code-migration.rb]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Install/Package[postgresql-server]/ensure: created\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/File[/opt/puppetlabs/server/data/postgresql]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/File[/opt/puppetlabs/server/data/postgresql]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/File[/opt/puppetlabs/server/data/postgresql/9.4]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/File[/opt/puppetlabs/server/data/postgresql/9.4]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/File[/etc/sysconfig/pgsql]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/File[/etc/sysconfig/pgsql]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Initdb/File[/opt/puppetlabs/server/data/postgresql/9.4/data]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Initdb/File[/opt/puppetlabs/server/data/postgresql/9.4/data]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Initdb/Exec[postgresql_initdb]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Initdb/Exec[postgresql_initdb]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_concat::Setup/File[/opt/puppetlabs/puppet/cache/pe_concat]/ensure: created\nNotice: /Stage[main]/Pe_concat::Setup/File[/opt/puppetlabs/puppet/cache/pe_concat/bin]/ensure: created\nNotice: /Stage[main]/Pe_concat::Setup/File[/opt/puppetlabs/puppet/cache/pe_concat/bin/concatfragments.sh]/ensure: defined content as '{md5}7bbe7c5fce25a5ddd20415d909ba44fc'\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments.concat]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments.concat]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments.concat.out]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments.concat.out]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Config_entry[listen_addresses]/Pe_postgresql_conf[listen_addresses]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Config_entry[listen_addresses]/Pe_postgresql_conf[listen_addresses]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Config_entry[port]/File[systemd-port-override]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Config_entry[port]/File[systemd-port-override]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Config_entry[port]/Exec[restart-systemd]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Config_entry[port]/Exec[restart-systemd]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Config_entry[port]/Pe_postgresql_conf[port]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Config_entry[port]/Pe_postgresql_conf[port]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Client/File[/opt/puppetlabs/server/bin/validate_postgresql_connection.sh]/ensure: defined content as '{md5}20301932819f035492a30880f5bf335a'\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[local access as postgres user]/Pe_concat::Fragment[pg_hba_rule_local access as postgres user]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/001_pg_hba_rule_local access as postgres user]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[local access as postgres user]/Pe_concat::Fragment[pg_hba_rule_local access as postgres user]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/001_pg_hba_rule_local access as postgres user]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[local access to database with same name]/Pe_concat::Fragment[pg_hba_rule_local access to database with same name]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/002_pg_hba_rule_local access to database with same name]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[local access to database with same name]/Pe_concat::Fragment[pg_hba_rule_local access to database with same name]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/002_pg_hba_rule_local access to database with same name]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[allow localhost TCP access to postgresql user]/Pe_concat::Fragment[pg_hba_rule_allow localhost TCP access to postgresql user]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/003_pg_hba_rule_allow localhost TCP access to postgresql user]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[allow localhost TCP access to postgresql user]/Pe_concat::Fragment[pg_hba_rule_allow localhost TCP access to postgresql user]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/003_pg_hba_rule_allow localhost TCP access to postgresql user]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[deny access to postgresql user]/Pe_concat::Fragment[pg_hba_rule_deny access to postgresql user]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/004_pg_hba_rule_deny access to postgresql user]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[deny access to postgresql user]/Pe_concat::Fragment[pg_hba_rule_deny access to postgresql user]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/004_pg_hba_rule_deny access to postgresql user]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[allow access to all users]/Pe_concat::Fragment[pg_hba_rule_allow access to all users]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/100_pg_hba_rule_allow access to all users]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[allow access to all users]/Pe_concat::Fragment[pg_hba_rule_allow access to all users]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/100_pg_hba_rule_allow access to all users]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[allow access to ipv6 localhost]/Pe_concat::Fragment[pg_hba_rule_allow access to ipv6 localhost]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/101_pg_hba_rule_allow access to ipv6 localhost]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_postgresql::Server::Pg_hba_rule[allow access to ipv6 localhost]/Pe_concat::Fragment[pg_hba_rule_allow access to ipv6 localhost]/File[/opt/puppetlabs/puppet/cache/pe_concat/_opt_puppetlabs_server_data_postgresql_9.4_data_pg_hba.conf/fragments/101_pg_hba_rule_allow access to ipv6 localhost]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/Exec[pe_concat_/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/Exec[pe_concat_/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Config/Pe_concat[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]/File[/opt/puppetlabs/server/data/postgresql/9.4/data/pg_hba.conf]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Service/Pe_anchor[pe_postgresql::server::service::begin]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Service/Pe_anchor[pe_postgresql::server::service::begin]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Service/Service[postgresqld]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Service/Service[postgresqld]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Service/Pe_postgresql::Validate_db_connection[validate_service_is_running]/Exec[validate postgres connection for /pe-postgres]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Service/Pe_postgresql::Validate_db_connection[validate_service_is_running]/Exec[validate postgres connection for /pe-postgres]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Service/Pe_anchor[pe_postgresql::server::service::end]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Service/Pe_anchor[pe_postgresql::server::service::end]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server::Reload/Exec[postgresql_reload]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server::Reload/Exec[postgresql_reload]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_postgresql::Server/Pe_anchor[pe_postgresql::server::end]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_postgresql::Server/Pe_anchor[pe_postgresql::server::end]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Tablespace[razor]/File[/opt/puppetlabs/server/data/postgresql/9.4/razor]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Tablespace[razor]/File[/opt/puppetlabs/server/data/postgresql/9.4/razor]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Tablespace[razor]/Pe_postgresql_psql[Create tablespace 'razor']: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Tablespace[razor]/Pe_postgresql_psql[Create tablespace 'razor']: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database[razor]/Pe_postgresql_psql[Check for existence of db 'razor']: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database[razor]/Pe_postgresql_psql[Check for existence of db 'razor']: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database[razor]/Exec[/opt/puppetlabs/server/bin/createdb --port='5432' --owner='pe-postgres' --template=template0 --tablespace='razor'  'razor']: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database[razor]/Exec[/opt/puppetlabs/server/bin/createdb --port='5432' --owner='pe-postgres' --template=template0 --tablespace='razor'  'razor']: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database[razor]/Pe_postgresql_psql[REVOKE CONNECT ON DATABASE \"razor\" FROM public]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database[razor]/Pe_postgresql_psql[REVOKE CONNECT ON DATABASE \"razor\" FROM public]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database[razor]/Pe_postgresql_psql[UPDATE pg_database SET datistemplate = false WHERE datname = 'razor']: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database[razor]/Pe_postgresql_psql[UPDATE pg_database SET datistemplate = false WHERE datname = 'razor']: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[CREATE ROLE \"razor\" ENCRYPTED PASSWORD 'razor' LOGIN NOCREATEROLE NOCREATEDB NOSUPERUSER  CONNECTION LIMIT -1]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[CREATE ROLE \"razor\" ENCRYPTED PASSWORD 'razor' LOGIN NOCREATEROLE NOCREATEDB NOSUPERUSER  CONNECTION LIMIT -1]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" NOSUPERUSER]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" NOSUPERUSER]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" NOCREATEDB]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" NOCREATEDB]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" NOCREATEROLE]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" NOCREATEROLE]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" LOGIN]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" LOGIN]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" INHERIT]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" INHERIT]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" NOREPLICATION]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" NOREPLICATION]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" CONNECTION LIMIT -1]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" CONNECTION LIMIT -1]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" ENCRYPTED PASSWORD 'razor']: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Role[razor]/Pe_postgresql_psql[ALTER ROLE \"razor\" ENCRYPTED PASSWORD 'razor']: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database_grant[GRANT razor - ALL - razor]/Pe_postgresql::Server::Grant[database:GRANT razor - ALL - razor]/Pe_postgresql_psql[GRANT ALL ON DATABASE \"razor\" TO \"razor\"]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Database[razor]/Pe_postgresql::Server::Db[razor]/Pe_postgresql::Server::Database_grant[GRANT razor - ALL - razor]/Pe_postgresql::Server::Grant[database:GRANT razor - ALL - razor]/Pe_postgresql_psql[GRANT ALL ON DATABASE \"razor\" TO \"razor\"]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Exec[migrate the razor database]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Exec[migrate the razor database]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/Pe_java_ks[pe-razor:truststore]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/Pe_java_ks[pe-razor:truststore]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/Pe_java_ks[pe-razor:keystore]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/Pe_java_ks[pe-razor:keystore]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/File[/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/standalone/configuration/standalone.xml]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/File[/opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/standalone/configuration/standalone.xml]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/Exec[deploy the razor application to torquebox]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/Exec[deploy the razor application to torquebox]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Service[pe-razor-server]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Service[pe-razor-server]: Skipping because of failed dependencies\nNotice: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/Exec[redeploy the razor application to torquebox]: Dependency Package[pe-razor-server] has failures: true\nWarning: /Stage[main]/Pe_razor/Pe_razor::Server[razor]/Pe_razor::Server::Torquebox[razor]/Exec[redeploy the razor application to torquebox]: Skipping because of failed dependencies\nInfo: Pe_razor::Server[razor]: Unscheduling all events on Pe_razor::Server[razor]\nInfo: Stage[main]: Unscheduling all events on Stage[main]\nNotice: Applied catalog in 197.74 seconds", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11568", "fixedVersions": [], "id": "11568", "issueType": "Bug", "key": "RAZOR-998", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:2ffa3d87-fcbe-4c86-9ab1-aede78ac2c68", "resolution": "Cannot Reproduce", "resolutionDate": "2018-02-12T14:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor dependency libarchive-devel package missing from some RHEL 7 repos", "timeSpent": "PT0S", "updated": "2018-02-12T14:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Determining the port number is a bit tricky, as it's different for PE vs. FOSS. Both URLs need an update regardless, so I'll mark it as a nice-to-have if we can get the port as 8151 where applicable as well.", "created": "2019-12-02T20:42:00.000000"}], "components": [], "created": "2017-02-17T15:07:00.000000", "creator": "623e79b3bef8a60068c8dbb8", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e3a648d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:w"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Dec/19"}], "description": "Current /etc/motd content references the old api endpoint.  For example:\n\ndevserver01 ~ # cat /etc/motd \nInstalled by Razor using Red Hat Enterprise Linux 7 - My Company Image\nRepo: http://prdperazor01.mycompany.com:8150/svc/repo/redhat7/\nNode: http://prdperazor01.mycompany.com:8150/api/nodes/33\nInstall log: /var/log/razor.log\n\nPort and endpoint should be updated since the API endpoint can only be accessed over 8151:\n\n*In Scope*\n* Update Repo and Node URLs to:\n** Repo: https://prdperazor01.mycompany.com:8150/api/collections/repos/redhat7\n** Node: https://prdperazor01.mycompany.com:8150/api/collections/nodes/node33\n* Investigate whether port 8151 can be printed for PE installations.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11808", "fixedVersions": [], "id": "11808", "issueType": "Improvement", "key": "RAZOR-996", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623e79b3bef8a60068c8dbb8", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update /etc/motd", "timeSpent": "PT0S", "updated": "2021-12-08T02:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I'm not sure there's so much of a benefit unless the server (or another system) is doing the generation of the token. Simply base64-encoding the username and password means the token is basically identical to sending the username and password.\n\nA better method might be the ability to generate a token through the server's API, which will be valid for some period of time. That would provide a bit more security. We'll need some ability to prune old tokens from the server's database over time but that seems like a minor concern. I do like the idea of keeping username/password out of environment variables, bash history, and the bash profile file.\n\n/cc [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] for any thoughts around this.", "created": "2017-02-17T12:09:00.000000"}, {"author": "623e79b3bef8a60068c8dbb8", "body": "Could the RBAC API be leveraged here? \u00a0It would be cool if a User Role could be created for Razor and the pe-client-tools could be used to generate the token.", "created": "2018-02-13T11:22:00.000000"}], "components": ["Client"], "created": "2017-02-13T15:51:00.000000", "creator": "70121:cd9d858d-837a-4a32-a973-735d6f7e075f", "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": "It is no longer necessary to pass credentials in the URL / store credentials in environment variables or bash profile scripts."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3abd96a6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:v"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Feb/17"}], "description": "In an effort to avoid storing credentials in clear text in places like environment variables, bash profiles and command history, I would like to offer a suggestion:\n* Razor cli prompts the user for credentials upon first run\n* base64 encodes said creds (stores this information in memory)\n* passes the encoded authorization token to the server for the remainder of that user's shell session (no need to keep prompting the user for creds)\n\n\n{code:bash}\n~$ echo \"razor:razor\" | base64\ncmF6b3I6cmF6b3IK\n\n~$ curl --request GET \\\n  --url 'https://razor:8151/api/collections/nodes' \\\n  --header 'authorization: Basic cmF6b3I6cmF6b3IK'\n{code}\n\n", "environment": "PE Enterprise 2016.2.1\n# razor --version\n        Razor Server version: 1.3.0.0\n        Razor Client version: 1.2.0\n# cat /etc/redhat-release\nRed Hat Enterprise Linux Server release 7.3 (Maipo)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11837", "fixedVersions": [], "id": "11837", "issueType": "New Feature", "key": "RAZOR-995", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "70121:cd9d858d-837a-4a32-a973-735d6f7e075f", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Improve the process of authenticating in Razor CLI", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "70121:cd9d858d-837a-4a32-a973-735d6f7e075f", "body": "The feature request I mentioned: https://puppet.atlassian.net/browse/RAZOR-995", "created": "2017-02-13T15:52:00.000000"}], "components": ["Client", "Server"], "created": "2017-02-13T15:10:00.000000", "creator": "70121:cd9d858d-837a-4a32-a973-735d6f7e075f", "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 auth_allow_localhost is set to true, allow all razor CLI commands executing on the razor server itself and by a system user with appropriate rights to run successfully."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@56b99348"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzbwif:"}, {"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_*:*_21025105_*|*_1_*:*_1_*:*_334246641_*|*_10007_*:*_1_*:*_430586293_*|*_5_*:*_1_*:*_1292420541_*|*_6_*:*_1_*:*_0"}], "description": "After enabling the localhost to bypass authentication (auth_allow_localhost: true in config-defaults.yaml), we found that from the razor server read-only commands worked (i.e., razor nodes), but create/update/register/delete commands no longer worked.  We would get a 500 error as follows:\n\nfrom /var/log/puppetlabs/razor-server/server.log:\n\n15:35:35,274 INFO  [razor.web.log] (http-/0.0.0.0:8151-3) 127.0.0.1 - - [03/Feb/2017:15:35:35 -0600] \"GET /api \" 200 6629 0.0120\n15:35:35,356 INFO  [razor.web.log] (http-/0.0.0.0:8151-3) 127.0.0.1 - - [03/Feb/2017:15:35:35 -0600] \"GET /api/commands/register-node \" 200 6205 0.0140\n15:35:35,419 INFO  [razor.web.api] (http-/0.0.0.0:8151-2) 2017-02-03 15:35:35 - Java::OrgApacheShiroAuthz::UnauthenticatedException - This subject is anonymous - it does not have any identifying principals and authorization operations require an identity to check against.  A Subject instance will acquire these identifying principals automatically after a successful login is performed be executing org.apache.shiro.subject.Subject.login(AuthenticationToken) or when 'Remember Me' functionality is enabled by the SecurityManager.  This exception can also occur when a previously logged-in Subject has logged out which makes it anonymous again.  Because an identity is currently not known due to any of these conditions, authorization is denied.:\n\torg.apache.shiro.subject.support.DelegatingSubject.assertAuthzCheckPossible(org/apache/shiro/subject/support/DelegatingSubject.java:199)\n\torg.apache.shiro.subject.support.DelegatingSubject.checkPermissions(org/apache/shiro/subject/support/DelegatingSubject.java:214)\n....\n\tjava.lang.Thread.run(java/lang/Thread.java:745)\n15:35:35,422 INFO  [razor.web.log] (http-/0.0.0.0:8151-2) 127.0.0.1 - - [03/Feb/2017:15:35:35 -0600] \"POST /api/commands/register-node \" 500 30 0.0130\n\nWe are running these commands from the localhost (razor server itself) and without passing any credentials.  If we pass credentials, all commands work as expected.  We were hoping to take advantage of the auth_allow_localhost feature and not have to store razor creds in an environment variable or a bash profile.\n\nI had originally posted about this on the puppet-razor google group: https://groups.google.com/forum/#!topic/puppet-razor/2dmxYU0xEq0\n\n(I will create a feature request in a separate ticket regarding the CLI and how it handles authentication; would like to suggest something.)", "environment": "PE Enterprise 2016.2.1\n# razor --version\n        Razor Server version: 1.3.0.0\n        Razor Client version: 1.2.0\n# cat /etc/redhat-release\nRed Hat Enterprise Linux Server release 7.3 (Maipo)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11848", "fixedVersions": ["RAZOR 1.6.1"], "id": "11848", "issueType": "Bug", "key": "RAZOR-994", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "70121:cd9d858d-837a-4a32-a973-735d6f7e075f", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "After setting auth_allow_localhost to true, create/update/register/delete commands fail with 500 error", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:cd585cab-e0e0-4cb0-8a6a-b74661660558", "body": "Just to be clear here, the rebasing includes adding the latest driver to the Centos build? Or are we just trying to update the OS to 7.3? I noticed that there is a new-ish driver on intel's site here (version 1.6.42) : https://downloadcenter.intel.com/download/24411/Intel-Network-Adapter-Driver-for-PCIe-Intel-40-Gigabit-Ethernet-Network-Connections-Under-Linux-?product=36773\n", "created": "2017-02-13T21:08:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I'm going to close this for now, as it seems the latest CentOS build at the time isn't functional for these chips. Once that is officially supported, we can build another microkernel. For now, this has been open for long enough that I'm doubting it is a high priority.", "created": "2018-03-09T19:15:00.000000"}], "components": ["Microkernel"], "created": "2017-02-01T12:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@751fa307"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymvnr:"}, {"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": "14/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_15447_*|*_10007_*:*_1_*:*_8153_*|*_3_*:*_1_*:*_545882494_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_513531898_*|*_10004_*:*_1_*:*_33610293437"}], "description": "Intel's relatively new X710 chips are incompatible with microkernel version 007 which is built on CentOS 7.1.1503. Support for these chips is added in Centos 7.3.\n\n*In Scope*\n* Rebuild microkernel on latest CentOS build (7.3.1611).", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11836", "fixedVersions": [], "id": "11836", "issueType": "Bug", "key": "RAZOR-993", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2018-03-09T19:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Microkernel does not support x710 chipset", "timeSpent": "PT0S", "updated": "2018-03-09T19:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "This exists cc [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:ab1874a9-45ab-4efc-91aa-5200c165b2c4] [~accountid:557058:adac4e58-01ac-4fce-8be9-94131c26c73d] [~accountid:557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20]", "created": "2018-03-02T12:48:00.000000"}, {"author": "557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20", "body": "The platform OS team has https://puppet.atlassian.net/browse/RAZOR-1053\u00a0open\n\n\u00a0\n\nWe will be using that epic to track work to get vanagon pipelines running for razor", "created": "2018-03-02T12:58:00.000000"}], "components": [], "created": "2017-01-25T11:14: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@5244c6ea"}, {"fieldName": "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": "Razor Packaging Spike"}, {"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 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|hyn4lj:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_18215408048_*|*_6_*:*_1_*:*_0_*|*_10013_*:*_1_*:*_4583877230_*|*_10006_*:*_1_*:*_16437046786"}], "description": "[~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab] and I were talking about how we really need to make this happen.\n\nHere's a rough list of what I would like to see\n\n* consolidate the pe and foss repos (pe-razor-server & razor-server, pe-razor-client & razor-client, pe-razor-libs & razor-torquebox).\n* consolidate razor pipelines so that there is only one (foss-based) which promotes into PE, takes advantage of PEZ, and is managed in ci-job-configs (a la puppet-agent)\n\nWe should only be building razor packages via the razor-vanagon project. The razor-client gem will continue to be built with the packaging repo as it always has. We will deliver only one razor-server package for both FOSS and PE (as we are with puppet-agent). The only difference between FOSS and PE will be the razor module. We will maintain an enterprise-only module to manage razor.\n\n[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] what are your thoughts on this? My goal is to reduce the maintenance footprint that razor currently had. You mentioned before that the only difference between razor-server and pe-razor-server is the acceptance tests. Is that still the case? Does this sound reasonable to you?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11584", "fixedVersions": ["RAZOR 1.8.1"], "id": "11584", "issueType": "Epic", "key": "RAZOR-991", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2018-04-24T15:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Spike on razor packaging process", "timeSpent": "PT0S", "updated": "2018-04-24T16:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2017-01-24T13:07:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7c52074e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg53:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2269_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3813698736"}], "description": "(Initial planned release date: 2017-01-25)\n\nClose any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.6.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": "11583", "fixedVersions": [], "id": "11583", "issueType": "Sub-task", "key": "RAZOR-990", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Announced: https://groups.google.com/forum/#!topic/puppet-razor/gUIOsRHNLzw", "created": "2017-03-09T16:25:00.000000"}], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@52541c92"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg4v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2347_*|*_5_*:*_1_*:*_181686_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3813523500"}], "description": "(Initial planned release date: 2017-01-25)\n\n  * [~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": "11461", "fixedVersions": [], "id": "11461", "issueType": "Sub-task", "key": "RAZOR-989", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Nothing to do for this in this release.", "created": "2017-03-09T13:35:00.000000"}], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1f37c61c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg4n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2270_*|*_5_*:*_1_*:*_10394373_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3803312853"}], "description": "(Initial planned release date: 2017-01-25)\n\nPush the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11412", "fixedVersions": [], "id": "11412", "issueType": "Sub-task", "key": "RAZOR-988", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@27391d24"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg4f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2288_*|*_3_*:*_1_*:*_6795609_*|*_5_*:*_1_*:*_5725171_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3801192472"}], "description": "(Initial planned release date: 2017-01-25)\n\nPush 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": "11298", "fixedVersions": [], "id": "11298", "issueType": "Sub-task", "key": "RAZOR-987", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@47e71cc3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg47:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2139_*|*_5_*:*_1_*:*_225522967_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3588196514"}], "description": "(Initial planned release date: 2017-01-25)\n\nThe 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": "11234", "fixedVersions": [], "id": "11234", "issueType": "Sub-task", "key": "RAZOR-986", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-07T01:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "yes from [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], [~accountid:557058:8db25e7a-4bdb-4fe2-af6b-f0a9bc714e12], and me", "created": "2017-03-09T13:13:00.000000"}], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5d520f9f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg3z:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Mar/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2266_*|*_5_*:*_1_*:*_11740149_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3801984023"}], "description": "(Initial planned release date: 2017-01-25)\n\nThis should happen Monday-Thursday, before noon PST. We should not be shipping anything after noon PST 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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11011", "fixedVersions": [], "id": "11011", "issueType": "Sub-task", "key": "RAZOR-985", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before noon PST) (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Passed in CentOS 6, CentOS 7, Ubuntu 14.04, and Ubuntu 16.04.", "created": "2017-03-09T15:38:00.000000"}], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42ff5936"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg3r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2236_*|*_5_*:*_1_*:*_3033141_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3810695495"}], "description": "(Initial planned release date: 2017-01-25)\n\nProcedure 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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "10982", "fixedVersions": [], "id": "10982", "issueType": "Sub-task", "key": "RAZOR-984", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T15:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://builds.delivery.puppetlabs.net/razor-server/1.6.0/", "created": "2017-03-07T11:27:00.000000"}], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7e03d7ac"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg3j:"}, {"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_*:*_2422_*|*_3_*:*_1_*:*_34635441_*|*_5_*:*_1_*:*_190844766_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3588247846"}], "description": "(Initial planned release date: 2017-01-25)\n\nTag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "11847", "fixedVersions": [], "id": "11847", "issueType": "Sub-task", "key": "RAZOR-983", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1751afd1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg3b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2338_*|*_5_*:*_1_*:*_225605072_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3588129607"}], "description": "(Initial planned release date: 2017-01-25)\n\nCollaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11835", "fixedVersions": [], "id": "11835", "issueType": "Sub-task", "key": "RAZOR-982", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in: https://puppet.atlassian.net/issues/?filter=25410\nIntroduced in: https://puppet.atlassian.net/issues/?filter=25411", "created": "2017-03-07T01:48:00.000000"}], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ad2ac0a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg33:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2345_*|*_5_*:*_1_*:*_225614779_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3588122217"}], "description": "(Initial planned release date: 2017-01-25)\n\nThis 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.Z', Save as \"Introduced in X.Y.Z\", 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": "11630", "fixedVersions": [], "id": "11630", "issueType": "Sub-task", "key": "RAZOR-981", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-07T01:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one? (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5c8c199b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg2v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2309_*|*_5_*:*_1_*:*_226217156_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3587523094"}], "description": "(Initial planned release date: 2017-01-25)\n\nFor 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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11567", "fixedVersions": [], "id": "11567", "issueType": "Sub-task", "key": "RAZOR-980", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@69df90b9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg2n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2246_*|*_5_*:*_1_*:*_226234201_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3587513493"}], "description": "(Initial planned release date: 2017-01-25)\n\nBump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11460", "fixedVersions": [], "id": "11460", "issueType": "Sub-task", "key": "RAZOR-979", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3e997164"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg2f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2372_*|*_5_*:*_1_*:*_226251488_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3587501873"}], "description": "(Initial planned release date: 2017-01-25)\n\nUse the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11411", "fixedVersions": [], "id": "11411", "issueType": "Sub-task", "key": "RAZOR-978", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets (RAZOR 1.6.0)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@434aba28"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzbg27:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2297_*|*_5_*:*_1_*:*_1296755321_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2516999914"}], "description": "(Initial planned release date: 2017-01-25)\n\nIf 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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.6.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11295", "fixedVersions": [], "id": "11295", "issueType": "Sub-task", "key": "RAZOR-977", "labels": [], "originalEstimate": "PT0S", "parent": "11233", "parentSummary": "Razor 1.6.1 2017-03-09 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release? (RAZOR 1.6.1)", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is there still interest in this release? Should we update the date and try to get it out soon?", "created": "2017-02-22T11:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] Yes that would be great. Sometime early next week perhaps.", "created": "2017-02-22T12:12:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "can we do week after next? Also, there are still no ci pipelines surrounding foss razor, right? We need to do a check up to make sure the packages are still build-able, etc", "created": "2017-02-22T12:21:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "That also includes updating https://github.com/puppetlabs/razor-vanagon/blob/master/configs/components/razor-server.json to whatever sha you're thinking about releasing at 1.6.0 and building packages and doing some initial smoke testing. I want to make sure we catch any issues before we're trying to get this out the door", "created": "2017-02-22T12:36:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Week after next sounds fine to me. How about that Tuesday (3/7)?", "created": "2017-02-22T12:51:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "perfect, let's plan for 3/7", "created": "2017-02-22T12:58:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Can you comment here when you've updated razor-server.json with the sha you want razor-server 1.6.0 to be based on, and when you have packages building?\n\nTo test the build, in the razor-vanagon repo, do the following\n{code}\nbundle install\nbundle exec build razor-server el-7-x86_64\n{code}\n\nThe above will build a razor-server package for el-7-x86_64. For more platform targets, see configs/platforms. You are welcome to add or remove platforms definitions as needed. I believe the build is broken on fedora, but I don't remember why.", "created": "2017-02-22T16:06:00.000000"}], "components": [], "created": "2017-01-24T13:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@26ee3ff9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hym7xr:"}, {"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": "22/Feb/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2310_*|*_3_*:*_1_*:*_181443075_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3632343051"}], "description": "Razor 1.6.1 2017-03-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": "11233", "fixedVersions": [], "id": "11233", "issueType": "Task", "key": "RAZOR-976", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor 1.6.1 2017-03-09 Release", "timeSpent": "PT0S", "updated": "2017-03-09T16:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c1478562ab90069f8b455", "body": "Windows Server 2016 task creates loop during installation of repo.\u00a0 After Windows copies files to the SAN disk, the blade reboots and PXE installation begins unpacking the boot.wim all over again.\u00a0 How do I edit or create a task that prevents this from occurring.", "created": "2019-02-13T14:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:623c1478562ab90069f8b455]\u00a0Thanks for the update, we will look into that.\n\nI'll add that all stock tasks can be overridden.\n * In PE: /etc/puppetlabs/razor-server/tasks is in the `task_path` by default. This is the location to add custom or overridden tasks.\n * In FOSS: See config.yaml to find the `task_path` variable. This is where Razor will look to find defined tasks.\n\nMore info about tasks is here:\n\nhttps://puppet.com/docs/pe/2019.0/tasks.html", "created": "2019-02-13T14:52:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Discussion on the error above is continued here:\u00a0https://groups.google.com/forum/#!topic/puppet-razor/s_P0Lau5hVM", "created": "2019-02-21T03:07:00.000000"}], "components": ["Server"], "created": "2017-01-11T11:08:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7b55a952"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzb6av:"}, {"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": "13/Feb/19"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_356054403_*|*_1_*:*_1_*:*_25271_*|*_10007_*:*_1_*:*_170035489_*|*_5_*:*_1_*:*_4414606328_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3291631"}], "description": "Now that Windows 2016 is out, Razor should ship an installer for it.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11566", "fixedVersions": ["RAZOR 1.6.1"], "id": "11566", "issueType": "Story", "key": "RAZOR-975", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Install task for Windows Server 2016", "timeSpent": "PT0S", "updated": "2019-02-21T03:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2017-01-11T11:00:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@62b9210d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hzb6af:"}, {"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_*:*_356053392_*|*_1_*:*_1_*:*_374930_*|*_10007_*:*_1_*:*_170062485_*|*_5_*:*_1_*:*_4414606203_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3396691"}], "description": "The single-source install.ps1 script now exists on the puppet master. The {{puppet-pe}} broker should now be updated to use this script instead of downloading from a separate source.\n\nThis fix can be backported to future PE releases.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11010", "fixedVersions": ["RAZOR 1.6.1"], "id": "11010", "issueType": "Story", "key": "RAZOR-974", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Use single source Windows Agent installer", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/391.", "created": "2018-01-31T12:49:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "PR #391 merged to razor-server#master at https://github.com/puppetlabs/razor-server/commit/1d951490cd0fb8499c8ebb9ba630ed4df10e6e5c.", "created": "2018-02-12T21:47:00.000000"}], "components": ["Server"], "created": "2017-01-09T12:48:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7cc3204c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzb3yf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Feb/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_134785794_*|*_1_*:*_1_*:*_33257707932_*|*_10007_*:*_1_*:*_1069093362_*|*_3_*:*_1_*:*_179111596_*|*_5_*:*_1_*:*_2250840344_*|*_6_*:*_1_*:*_0"}], "description": "JRuby 1.7 is now EOL, so we should be updating to a more recent version.\n\nThis is a ticket to investigate what it will take to make this transition.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10981", "fixedVersions": ["RAZOR 1.7.0"], "id": "10981", "issueType": "Story", "key": "RAZOR-973", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-02-14T11:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Spike: Update razor-server to use JRuby 9000", "timeSpent": "PT0S", "updated": "2018-04-02T10:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Microkernel"], "created": "2017-01-07T16:44:00.000000", "creator": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@19b8fbe"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzb3d3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5044061152_*|*_5_*:*_1_*:*_225417880_*|*_6_*:*_1_*:*_0"}], "description": "Hi,\n\nThe current microkernel image shipped with razor doesn't have EFISTUBS. This means you can't boot it directly via PXE in UEFI mode.\n\nSimply rebuilding it on CentOS 7 seems to use the right kernel to make this work.\n\nCheers,\nJohn", "environment": "CentOS 7", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10980", "fixedVersions": ["RAZOR 1.6.1"], "id": "10980", "issueType": "Bug", "key": "RAZOR-972", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Current shipped microkernel doesn have EUFI stubs", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Microkernel"], "created": "2017-01-07T16:42:00.000000", "creator": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@11f1f2b3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzb3cv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5044140438_*|*_5_*:*_1_*:*_225444924_*|*_6_*:*_1_*:*_0"}], "description": "Hi,\n\nI've created a pull request at https://github.com/puppetlabs/razor-el-mk/pull/33\non CentOS 7 at least, the image that gets created isn't gzipd so the code fails.\n\nThe fix is easy though as this is code left over from when the image was being patched which it no longer is", "environment": "CentOS 7", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11846", "fixedVersions": ["RAZOR 1.6.1"], "id": "11846", "issueType": "Bug", "key": "RAZOR-971", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "microkernel image fails to properly build", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I have resolved this issue. The files were not properly created in the release process.", "created": "2017-01-06T16:08:00.000000"}, {"author": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "body": "Thanks Scott. That was a quick fix!!", "created": "2017-01-06T16:17:00.000000"}], "components": ["Server"], "created": "2017-01-06T15:55:00.000000", "creator": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4215fba3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzb38n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jan/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_762870_*|*_5_*:*_1_*:*_5358032490_*|*_6_*:*_1_*:*_0"}], "description": "Hi,\n\nI'm trying to use the pe broker to install the puppet agent on windows. It uses the following URL\n\nhttps://pm.puppetlabs.com/cgi-bin/download.cgi?ver=$\\{dist\\}&dist=win&arch=$\\{arch\\}\nwhich translates to\nhttps://pm.puppetlabs.com/cgi-bin/download.cgi?ver=latest&dist=win&arch=x64\nthis redirects to\nhttps://pm.puppetlabs.com/puppet-enterprise/2016.5.1/puppet-enterprise-2016.5.1-x64.msi\nwhich then redirects to\nhttps://s3.amazonaws.com/pe-builds/released/2016.5.1/puppet-enterprise-2016.5.1-x64.msi\nwhich returns a 403\n\nThe URL on the website seems to be\nhttps://pm.puppetlabs.com/puppet-agent/2016.5.1/1.8.2/repos/windows/puppet-agent-1.8.2-x64.msi\n\nCheers,\nJohn", "environment": "Centos 7", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11410", "fixedVersions": ["RAZOR 1.6.1"], "id": "11410", "issueType": "Bug", "key": "RAZOR-970", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "PE Broker Windows Agent URL is broken", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing in favor of this other ticket.", "created": "2017-12-06T14:20:00.000000"}], "components": ["Server"], "created": "2016-12-26T18:37:00.000000", "creator": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e920dcd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hzax0f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Dec/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29792622807_*|*_6_*:*_1_*:*_0"}], "description": "Hi,\n\nI've spent a few days debugging issues with using razor to install Win2k12 vie EUFI PXE.\n\nIn /opt/puppetlabs/server/apps/razor-server/share/razor-server/tasks/windows.task/boot_wim.erb\n\nthe line\ninitrd ${base}/razor-winpe.wim              boot.wim\nneeds to read\ninitrd --name boot.wim ${base}/razor-winpe.wim              boot.wim\n\nAccording to http://ipxe.org/cmd/imgfetch this is necessary for UEFI to call it boot.wim otherwise it is still referred to as razor-winpe.wim and bootmgr can't find anything.\n\nCheers,\nJohn", "environment": "Razor running on CentOS", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11834", "fixedVersions": [], "id": "11834", "issueType": "Bug", "key": "RAZOR-969", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:07c35367-7ef3-4ff9-81f6-5c25c43dad88", "resolution": "Duplicate", "resolutionDate": "2017-12-06T14:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "UEFI Windows Boot Support", "timeSpent": "PT0S", "updated": "2017-12-06T14:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "body": "Hi all - Is there any ETA on this, or a way I can track when it will be worked on?", "created": "2016-11-29T15:12:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:70121:199f31c7-67c7-42b0-b148-18ad3a391ab0] I will check this out this week to see if the 5.5 installer will also work for 6.", "created": "2017-01-08T23:10:00.000000"}, {"author": "557058:7b91651e-05ea-4237-8f1d-8cc9d4601e75", "body": "The 5.5 installer completes the initial installation, but then the firstboot script just repeatedly reboots the system, never quite finishing. Tested with Razor 1.6.1 from packages, and esxi 6.0u3.", "created": "2017-08-15T02:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/382 and https://github.com/puppetlabs/razor-server/pull/383.\nI have tested that the changes from these PRs lead to successful install of Vmware-ESXi-6.0.0-3620759-Custom-Cisco-6.0.2.2.iso.", "created": "2017-11-29T12:58:00.000000"}], "components": [], "created": "2016-11-08T07:40: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@2a779778"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hza07r:"}, {"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/Jan/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_4651554049_*|*_1_*:*_1_*:*_7752345_*|*_10007_*:*_1_*:*_24780992_*|*_10009_*:*_1_*:*_3476448_*|*_5_*:*_1_*:*_1370238120_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_28043253505_*|*_10005_*:*_1_*:*_5318494248"}], "description": "According to the docs, Razor currently only supports ESXi 5.5. I've gotten requests to extend that to ESXi 6.x which has been out for a while. Please consider adding this to your backlog for a future release.  Thanks!!\n\n*In Scope*\n* Test out the ESXi 5.5 task against ESXi 6.x.\n* Create a hierarchy like the following:\n** \"vmware_esxi/6\" inherits \"vmware_esxi\" with no modifications\n** \"vmware_esxi/5.5\" inherits \"vmware_esxi\" with 5.5-specific modifications\n** Note that the \"vmware_esxi\" task should always be the latest version of the task we supply.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11293", "fixedVersions": ["RAZOR 1.7.0"], "id": "11293", "issueType": "Improvement", "key": "RAZOR-967", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "70121:199f31c7-67c7-42b0-b148-18ad3a391ab0", "resolution": "Fixed", "resolutionDate": "2018-01-22T16:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add support to provision ESXi 6.x in Razor", "timeSpent": "PT0S", "updated": "2018-02-07T13:32:00.000000", "votes": "4", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2016-10-20T14:39:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1999ad67"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyo7rz:"}, {"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": "17/Nov/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3383019532_*|*_10007_*:*_1_*:*_296359766_*|*_3_*:*_1_*:*_825899513_*|*_5_*:*_1_*:*_7363559178_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_237305014"}], "description": "A new task to install SLES from iPXE has been requested. This should work for SLES 11, and possibly also tested against SLES 12.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11459", "fixedVersions": ["RAZOR 1.6.1"], "id": "11459", "issueType": "Story", "key": "RAZOR-966", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create SUSE SLES task", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": ["Client", "DOCS"], "created": "2016-10-20T13:18:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3925cdba"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9p0n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11426_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_1115429916"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11291", "fixedVersions": ["RAZOR 1.5.0"], "id": "11291", "issueType": "Sub-task", "key": "RAZOR-965", "labels": [], "originalEstimate": "PT0S", "parent": "11830", "parentSummary": "set-node-hw-info not working for mac(net0, etc.)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-11-02T11:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "RN - `set-node-hw-info` not working for mac", "timeSpent": "PT0S", "updated": "2016-11-02T11:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-10-20T13:15:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b07952b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9p0f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11923_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_1115581075"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11231", "fixedVersions": ["RAZOR 1.5.0"], "id": "11231", "issueType": "Sub-task", "key": "RAZOR-964", "labels": [], "originalEstimate": "PT0S", "parent": "11843", "parentSummary": "hw-info only storing keys from `match_nodes_on` config", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-11-02T11:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Add `hw-info` command w/ new and improved info", "timeSpent": "PT0S", "updated": "2016-11-02T11:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-10-20T13:08:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7d89477c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9p07:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Nov/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_11239_*|*_10009_*:*_1_*:*_85110126_*|*_5_*:*_1_*:*_9975275151_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1930930_*|*_10005_*:*_1_*:*_1824265826"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11009", "fixedVersions": ["RAZOR 1.5.0"], "id": "11009", "issueType": "Sub-task", "key": "RAZOR-963", "labels": [], "originalEstimate": "PT0S", "parent": "11767", "parentSummary": "Add `update-policy-node-metadata` command", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-11-11T15:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - New `update-policy-node-metadata` command", "timeSpent": "PT0S", "updated": "2017-03-07T01:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-10-20T13:04:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b64be9e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9ozr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_8331_*|*_10009_*:*_1_*:*_861989247_*|*_5_*:*_1_*:*_9116489856_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_1908356162"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11844", "fixedVersions": ["RAZOR 1.5.0"], "id": "11844", "issueType": "Sub-task", "key": "RAZOR-962", "labels": [], "originalEstimate": "PT0S", "parent": "11943", "parentSummary": "Add Fedora 23 task", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-11-21T13:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - New Fedora 23 task", "timeSpent": "PT0S", "updated": "2017-03-07T01:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-10-20T12:56:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e330d73"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9ozj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13948_*|*_10009_*:*_1_*:*_88086727_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_1821720642"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11832", "fixedVersions": ["RAZOR 1.5.0"], "id": "11832", "issueType": "Sub-task", "key": "RAZOR-961", "labels": [], "originalEstimate": "PT0S", "parent": "11829", "parentSummary": "Add UILanguage metadata for international ISOs", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-11-11T14:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "RN - UILanguage property for international ISOs", "timeSpent": "PT0S", "updated": "2016-11-11T14:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-10-20T12:53:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a418f49"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9oyv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_8929_*|*_10009_*:*_1_*:*_7176897_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_1902760470"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11458", "fixedVersions": ["RAZOR 1.5.0"], "id": "11458", "issueType": "Sub-task", "key": "RAZOR-960", "labels": [], "originalEstimate": "PT0S", "parent": "11225", "parentSummary": "Metadata update does not throw error around no_replace", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-11-11T14:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Updates to node metadata commands", "timeSpent": "PT0S", "updated": "2016-11-11T14:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "This is basically covered under the same enhancement note as RAZOR-961: Razor now supports international ISOs. I don't think there's a need to document this bug specifically. Let me know if you disagree [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4].", "created": "2016-11-10T14:01:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "(y)", "created": "2016-11-11T14:28:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-10-20T12:45:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@60dcd268"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9oyn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Nov/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_19201_*|*_5_*:*_1_*:*_10065413610_*|*_6_*:*_2_*:*_6919_*|*_10005_*:*_1_*:*_1822525391"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11409", "fixedVersions": ["RAZOR 1.5.0"], "id": "11409", "issueType": "Sub-task", "key": "RAZOR-959", "labels": [], "originalEstimate": "PT0S", "parent": "11564", "parentSummary": "Fix 64-bit puppet agent installation on non-English Windows", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2017-03-07T01:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "RN - Non-English Windows installation", "timeSpent": "PT0S", "updated": "2017-03-07T01:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-10-19T11:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "`razor nodes nodeX hw_info` yields more than `mac` by default."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ea915ef"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9oef:"}, {"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_*:*_104614_*|*_10007_*:*_1_*:*_44481_*|*_5_*:*_1_*:*_112278123_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_81186069"}], "description": "When a node gets identified, only the {{hw_info}} that is used to identify the node is stored on the node. By default, only the {{mac}} (which comes from the {{netX}} properties) get stored:\n\n{noformat}\n[root@puppet-razor-01 /]# razor nodes node1 hw_info\nFrom https://localhost:8151/api/collections/nodes/node1:\n\n  mac: [01-01-01-01-01-01]\n{noformat}\n\nThat makes things more complicated when you want to change how you identify a node. Instead, all properties that iPXE sends should be recorded for future usage and lookup.\n\n-The fix for this should work retroactively for nodes already in a system when they reboot.- *Out of scope*. This will be done via {{set-node-hw-info}}.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11843", "fixedVersions": ["RAZOR 1.5.0"], "id": "11843", "issueType": "Bug", "key": "RAZOR-958", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-10-20T09:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "hw-info only storing keys from `match_nodes_on` config", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1724b289"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o3b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_264644947_*|*_6_*:*_2_*:*_60793"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.5.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": "11457", "fixedVersions": [], "id": "11457", "issueType": "Sub-task", "key": "RAZOR-957", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-21T18:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "https://groups.google.com/forum/#!topic/puppet-razor/SP0f-uGUqug", "created": "2016-10-21T17:09:00.000000"}], "components": [], "created": "2016-10-18T16:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5faa0fb5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o33:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_261055950_*|*_5_*:*_1_*:*_3653124_*|*_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": "11408", "fixedVersions": [], "id": "11408", "issueType": "Sub-task", "key": "RAZOR-956", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-21T17:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67accefc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o2v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_261039643_*|*_5_*:*_1_*:*_3672264_*|*_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": "11290", "fixedVersions": [], "id": "11290", "issueType": "Sub-task", "key": "RAZOR-955", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-21T18:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5503b8b9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o2n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_156942325_*|*_3_*:*_1_*:*_11838598_*|*_5_*:*_1_*:*_95932391_*|*_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": "11229", "fixedVersions": [], "id": "11229", "issueType": "Sub-task", "key": "RAZOR-954", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-21T18:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c609bdf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o2f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_154082183_*|*_5_*:*_1_*:*_110634588_*|*_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": "11008", "fixedVersions": [], "id": "11008", "issueType": "Sub-task", "key": "RAZOR-953", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-21T18:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Attended:\n- Steve Axthelm\n- Melissa Stone\n- Scott McClellan", "created": "2016-10-20T13:36:00.000000"}], "components": [], "created": "2016-10-18T16:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@55da0dbb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o27:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_161890023_*|*_5_*:*_1_*:*_102829284_*|*_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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10978", "fixedVersions": [], "id": "10978", "issueType": "Sub-task", "key": "RAZOR-952", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-20T13:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Smoke tested on CentOS 6 & 7, Ubuntu Trusty & Xenial.", "created": "2016-10-20T13:34:00.000000"}], "components": [], "created": "2016-10-18T16:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7a69b860"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o1z:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_149651682_*|*_3_*:*_1_*:*_12111338_*|*_5_*:*_1_*:*_102956830_*|*_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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11842", "fixedVersions": [], "id": "11842", "issueType": "Sub-task", "key": "RAZOR-951", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-20T13:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Final SHA is cff0cca1111d5e836cd4ac6c17bd7b8ece5db872.", "created": "2016-10-20T11:21:00.000000"}], "components": [], "created": "2016-10-18T16:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@29781e54"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o1r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_71620110_*|*_5_*:*_1_*:*_115085622_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_17612_*|*_10006_*:*_1_*:*_78000074"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "11831", "fixedVersions": [], "id": "11831", "issueType": "Sub-task", "key": "RAZOR-950", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-20T10:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31a47773"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o1j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_149584323_*|*_5_*:*_1_*:*_115140343_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11627", "fixedVersions": [], "id": "11627", "issueType": "Sub-task", "key": "RAZOR-949", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-21T18:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@52a3e816"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o1b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_149522048_*|*_4_*:*_1_*:*_6111_*|*_5_*:*_1_*:*_115199872_*|*_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.Z', Save as \"Introduced in X.Y.Z\", 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": "11565", "fixedVersions": [], "id": "11565", "issueType": "Sub-task", "key": "RAZOR-948", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-20T10:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@37895bb3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o13:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_149574507_*|*_5_*:*_1_*:*_115156369_*|*_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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11456", "fixedVersions": [], "id": "11456", "issueType": "Sub-task", "key": "RAZOR-947", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-21T18:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5feb15c6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o0v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_149570127_*|*_5_*:*_1_*:*_115162688_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11406", "fixedVersions": [], "id": "11406", "issueType": "Sub-task", "key": "RAZOR-946", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-21T18:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5294089d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o0n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_149177503_*|*_5_*:*_1_*:*_115557354_*|*_6_*:*_1_*:*_0"}], "description": "Use the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11289", "fixedVersions": [], "id": "11289", "issueType": "Sub-task", "key": "RAZOR-945", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-20T10:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@790e3501"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o0f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_149148952_*|*_5_*:*_1_*:*_115587953_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.5.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11227", "fixedVersions": [], "id": "11227", "issueType": "Sub-task", "key": "RAZOR-944", "labels": [], "originalEstimate": "PT0S", "parent": "11007", "parentSummary": "razor-server 1.5.0 2016-10-20 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-10-20T10:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2016-10-21T18:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-10-18T16:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1227bcf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9o07:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_147348027_*|*_3_*:*_2_*:*_2883687284_*|*_5_*:*_5_*:*_336330_*|*_6_*:*_1_*:*_0"}], "description": "razor-server 1.5.0 2016-10-20 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": "11007", "fixedVersions": [], "id": "11007", "issueType": "Task", "key": "RAZOR-943", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-11-22T17:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-server 1.5.0 2016-10-20 Release", "timeSpent": "PT0S", "updated": "2016-11-22T17:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:b0000c48-c6a4-41b8-baf9-6d9c091a181c", "body": "Hi Thomas,\n\nI have UEFI boot working (on VMware Fusion), using the ipxe.efi from http://boot.ipxe.org/ipxe.efi and the following dnsmasq boot logic:\n\n# Boot logic\ndhcp-match=set:EFI,option:client-arch,7\ndhcp-boot=tag:EFI,ipxe.efi\n\ndhcp-match=set:iPXE,175\ndhcp-boot=tag:iPXE,bootstrap.ipxe\n\ndhcp-boot=undionly-20140116.kpxe\n\n\nCan you try if that works for you too?\nI'm using pe_razor from Puppet Enterprise 2017.3.1, which is probably newer than what you are using. So it may also be that your Microkernel is a bit older and has more problems with UEFI.\n\nRegards,\nKevin", "created": "2017-12-06T14:29:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "UEFI has been revisited in razor-server 1.7.1. Including the change Kevin suggests above, I'm closing this ticket. If it springs back up again, feel free to file another ticket.", "created": "2018-02-12T13:58:00.000000"}], "components": ["Microkernel", "Server"], "created": "2016-10-11T04:05:00.000000", "creator": "623d01214a57610068e7d251", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4559056c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9dvz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Dec/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_42288788554_*|*_5_*:*_1_*:*_2413725261_*|*_6_*:*_1_*:*_0"}], "description": "Hello Razor team, \n\nI have followed the installation guide in order to deploy ESXi on my HP BL460 server though Network PXE. Note that the server has been set in UEFI mode and I have no issue if the server is in Legacy BIOS mode.\n\nI have changed the DNSMASQ configuration in order to accept UEFI.\n\nDNSMAQ configuration:\n#Local network\ndhcp-range=[IP_RANGE],static\ndhcp-option=3,[IP_GATWAY]\ndhcp-option=6,[IP_RAZOR_SERVER]\n\n#Admin network\ndhcp-range=tag:admin,[ IP_RANGE],static,[MASK]\ndhcp-option=tag:admin,3, [IP_GATWAY]\ndhcp-option=tag:admin,6, [IP_RAZOR_SERVER]\n\n#DHCP match \ndhcp-match=IPXEBOOT,175\ndhcp-match=X86-64_EFI, option:client-arch, 7\n\n#DHCP boot\ndhcp-boot=net:IPXEBOOT,bootstrap.ipxe\ndhcp-boot=net:X86-64_EFI,ipxe.efi\ndhcp-boot=undionly.kpxe\n\n#Hosts\ndhcp-host=[MAC_ADDRESS],[HOSTNAME],[IP_HOST],set:admin\n\n# TFTP setup\nenable-tftp\ntftp-root=/var/lib/tftpboot\n\n#Disable cache\ncache-size=0\n\n# Disable negative caching\nno-negcache\n\n# Logging\nlog-dhcp\nlog-facility=/var/log/dnsmasq.log\nlog-queries\n\n\nIn \u201c/var/lib/tftpboot\u201d, I have the following files: \n- bootstrap.ipxe : This file has been generated through the RAZOR API (http://[RAZOR_Server_Name]:8150/api/mircokernel/bootstrap?nic_max=1)\n- undionly.kpxe: This file is coming from the website http://boot.ipxe.org/undionly.kpxe\n- ipxe.efi: This file has been created with the website https://rom-o-matic.eu/. \n\nFirst I have created the \u201cEFI PXE bootstrap 64-bit (.efi)\u201d file in \u201cStandard, for most common use\u201d. When I switch on my HP server in PXE boot mode, the file \"ipxe.efi\" is downloaded and an IP address is returned by the RAZOR server. The files \"initidr0.img\" and \"vmlinuz0\" (used for the microkernel) are sent to the machine though TFTP and ... that's all :(\nI cannot interact with the HP server and I have the same issue if I switch off and on again.\n\nInterresting point: \nAfter running the command \"razor nodes\" on RAZOR server, I can see a new node with a dhcp_mac suffixed with \"net0$\". \n\nThen, I have created the \u201cEFI PXE bootstrap 64-bit (.efi)\u201d file in \u201cAdvanced, for experienced users\u201d following the requirements specified here: https://wiki.fogproject.org/wiki/index.php?title=IPXE#UEFI. However, when I switch on my HP server in PXE boot mode, the file \"ipxe.efi\" is downloaded and the following error appears: \u201cset: command not found\u201d\nIn both cases, I have added the same iPXE script (coming from bootstrap.ipxe) to generate the \u201cipxe.efi\u201d file.\n\nWhy the microkernel cannot be loaded? What am I doing wrong with the \u201cipxe.efi\u201d file?\n\nThank you in advance for your help. \n\nThomas.\n", "environment": "Razor version: 0.15.0\nClient server in UEFI mode: HP BL 460", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11006", "fixedVersions": ["RAZOR 1.7.0"], "id": "11006", "issueType": "Bug", "key": "RAZOR-942", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623d01214a57610068e7d251", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Failed to load microkernel in UEFI mode", "timeSpent": "PT0S", "updated": "2018-03-12T13:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/362.", "created": "2016-10-06T20:09:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-10-06T20:07:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@482c63ae"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9c87:"}, {"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/Oct/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_290665227_*|*_1_*:*_1_*:*_89693_*|*_10007_*:*_1_*:*_74121873_*|*_5_*:*_1_*:*_920534823_*|*_6_*:*_1_*:*_0"}], "description": "When using a non-English version of the Windows installer, the architecture\nof the machine is not being properly read. The install.ps1.erb script was \nlooking for \"64-bit\", but the \"bit\" part of that gets translated.\n\nFrom user yoshito teshigahara (@tesi) on Slack:\n{quote}\nHi all. I installed puppet agent on a Windows 2012R2 with Razor/Broker and I found the puppet agent of 32-bit was installed on Win 2012R2. I changed the sixth line of install.ps1.erb \"-eq '64-bit'\" to \"-match '64'\", and then I could successfully installed puppet agent of 64-bit on it. My Win 2012R2 is Japanese Version, so if you execute the \"Get-WmiObject -Class Win32_OperatingSystem | Select-Object -ExpandProperty OSArchitecture\" on it, you get return value in Japanese(\"bit\" is written in Japanese). So I think \"-match '64'\" is better for Windows of Japanese Version. If you have the other solution, please share your way.\n{quote}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11564", "fixedVersions": ["RAZOR 1.5.0"], "id": "11564", "issueType": "Bug", "key": "RAZOR-941", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-10-11T01:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Fix 64-bit puppet agent installation on non-English Windows", "timeSpent": "PT0S", "updated": "2016-10-23T23:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/361.", "created": "2016-10-06T19:21:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-10-06T18:58:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Run `update-node-metadata` and `modify-node-metadata` using `no-replace` == true on a key that already exists on the node and see an error returned. In `modify-node-metadata`, pass `force` == true to suppress the error and notice the key is not updated."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@60030ae0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9c7b:"}, {"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_*:*_2_*:*_128208150_*|*_1_*:*_1_*:*_1337721_*|*_10007_*:*_1_*:*_325293656_*|*_5_*:*_2_*:*_834663998_*|*_6_*:*_1_*:*_0"}], "description": "When the user runs either {{modify-node-metadata}} or {{update-node-metadata}} using the {{no_replace}} flag, the result is that the operation fails silently for any key(s) that already exist. This is not the behavior documented for these commands, which state that the command will fail if this happens.\n\nIn the case of {{modify-node-metadata}}, a new flag {{force}} will be added so that batch operations can still succeed. This will allow feature parity with the existing behavior by supplying a value of {{true}}.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11225", "fixedVersions": ["RAZOR 1.5.0"], "id": "11225", "issueType": "Bug", "key": "RAZOR-940", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-10-12T11:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Metadata update does not throw error around no_replace", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The issue here is a combination of two things:\n\n[By default, only the `mac` is stored currently|https://puppet.atlassian.net/browse/RAZOR-958]. All iPXE {{hw_info}} properties that are reported via the bootstrap script should be showing up under {{razor nodes nodeX hw_info}}. That will be fixed in the next release.\n\n{{mac}} is not a directly modifiable property, and if only {{netX}} properties are supplied, it complains that {{mac}} is not supplied! That was fixed as part of this ticket, and will also be included in the next release.", "created": "2016-10-20T10:01:00.000000"}], "components": ["Client", "DOCS"], "created": "2016-10-06T15:23:00.000000", "creator": "623c0af1562ab90069f8afaa", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@58ebe2c3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz9bvr:"}, {"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/Oct/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1190059461_*|*_10007_*:*_1_*:*_85326_*|*_5_*:*_1_*:*_112267334_*|*_6_*:*_1_*:*_0"}], "description": "Unable to submit any command that actually allows for updating the MAC on an already existing node.  It keeps complaining about the attribute mac, which it does not accept as a parameter.\n\nCommands attempted below:\n\n{noformat}\n[root@puppet4-razor-01 /]# razor nodes node1 hw_info\nFrom https://localhost:8151/api/collections/nodes/node1:\n\n  mac: [08-00-27-d9-2d-97]\n\n\nrazor set-node-hw-info --node node1 --hw-info net0=08:00:27:d9:2d:98\nError from doing POST https://localhost:8151/api/commands/set-node-hw-info\n422 Unprocessable Entity\n  error: hw_info must contain at least one of the match keys: mac\n\n[root@puppet4-razor-01 /]# razor set-node-hw-info --node node1 --hw-info mac net0=08:00:27:d9:2d:98\nError: Invalid object for argument 'hw_info': 795: unexpected token at 'mac'\nTry 'razor --help' for more information\n\n[root@puppet4-razor-01 /]# razor set-node-hw-info --node node1 --hw-info net0=08:00:27:d9:2d:98 mac\nError from doing POST https://localhost:8151/api/commands/set-node-hw-info\n404 Resource Not Found\n  error: node must be the name of an existing node, but is 'mac'\n\n[root@puppet4-razor-01 /]# razor set-node-hw-info --node node1 --hw-info mac=08:00:27:d9:2d:98\nError from doing POST https://localhost:8151/api/commands/set-node-hw-info\n422 Unprocessable Entity\n  error: extra attribute mac was present in hw_info, but is not allowed\n[root@puppet4-razor-01 /]# razor set-node-hw-info --node node1 --hw-info mac0=08:00:27:d9:2d:98\nError from doing POST https://localhost:8151/api/commands/set-node-hw-info\n422 Unprocessable Entity\n  error: extra attribute mac0 was present in hw_info, but is not allowed\n{noformat}\n", "environment": "Puppet Enterprise 2016.2.1\nCentOS 7", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11830", "fixedVersions": ["RAZOR 1.5.0"], "id": "11830", "issueType": "Bug", "key": "RAZOR-939", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c0af1562ab90069f8afaa", "resolution": "Fixed", "resolutionDate": "2016-10-20T09:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "set-node-hw-info not working for mac(net0, etc.)", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] So I can add a known issue for this, what is/are the PE versions where the error shows up in the setupact.log file?", "created": "2016-10-20T13:02:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-09-29T15:42:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2f5260f3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz95lz:"}, {"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/Oct/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_42221791_*|*_1_*:*_1_*:*_3030227_*|*_10007_*:*_1_*:*_1101799661_*|*_3_*:*_1_*:*_1814739_*|*_5_*:*_1_*:*_757219102_*|*_6_*:*_1_*:*_0"}], "description": "There exist many different languages of Windows Server ISO files. When a user tries to install using the stock Windows task and a non-{{en-US}} ISO file, an error shows up in the setupact.log file about the {{UILanguage}} property since the unattended.xml file currently depends on that language being present.\n\nA better approach would be to add a standardized metadata value, e.g. {{win_language}}, that will be used in the unattended.xml.erb. If a user has an ISO with a different default language, the user can place [the language string|https://technet.microsoft.com/en-us/library/cc722435(v=ws.10).aspx] in a policy's {{node_metadata}} so it will be applied to all bound nodes.\n\nAdditionally, there are several other language-related properties which default to \"en-US\". These values should follow the same pattern.\n\nNew step in workflow using Japan as example (from previous Slack bug report):\n_When creating the Windows policy, use {{node_metadata}} that includes \"win_language\" with value \"ja-JP\"._", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11829", "fixedVersions": ["RAZOR 1.5.0"], "id": "11829", "issueType": "Story", "key": "RAZOR-938", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-10-12T22:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add UILanguage metadata for international ISOs", "timeSpent": "PT0S", "updated": "2016-11-10T13:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Ready for review:\nhttps://github.com/puppetlabs/pe-docs-private/commit/72a8ab77b7d6e3dd115a881571cbf1f0619d56de\n\nShould this be documented as a known issue in any previous versions? If so, which? (I don't see Affects version in the parent ticket.)", "created": "2016-10-03T14:32:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Ah, it becomes more clear. [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], could you take another look?\nhttps://github.com/puppetlabs/pe-docs-private/commit/1b24995971d51b4d1c7045a044c648d6b5552ab2", "created": "2016-10-10T10:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Looks great!", "created": "2016-10-11T11:57:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Added to everett branch", "created": "2016-10-11T12:02:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-08-31T16:59:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2e6416c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hympin:"}, {"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": "1_*:*_1_*:*_10678_*|*_10009_*:*_2_*:*_452231193_*|*_5_*:*_1_*:*_882489236_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_230007927_*|*_10005_*:*_1_*:*_2842352247"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11221", "fixedVersions": ["RAZOR 1.5.0"], "id": "11221", "issueType": "Sub-task", "key": "RAZOR-937", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": "11840", "parentSummary": "Synchronize time in puppet broker", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-10-11T12:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Synchronize time in puppet broker", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Ready for review:\nhttps://github.com/puppetlabs/pe-docs-private/commit/a3c7dc3b42750052edd39764cbfd5bee5bb572dc", "created": "2016-10-03T12:59:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Reviewed.", "created": "2016-10-04T13:51:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Done/fixed on everett branch:\nhttps://github.com/puppetlabs/pe-docs-private/commit/6578065d5d411c8b9357fd3f91e792e437feb3fe", "created": "2016-10-04T15:16:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-08-31T11:03:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@426296f1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hympif:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Oct/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9835_*|*_10009_*:*_1_*:*_89521962_*|*_5_*:*_1_*:*_1475683322_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5085850_*|*_10005_*:*_1_*:*_2858111049"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11453", "fixedVersions": ["RAZOR 1.5.0"], "id": "11453", "issueType": "Sub-task", "key": "RAZOR-936", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": "11220", "parentSummary": "Add `update-policy-broker` command", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-10-04T15:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - update-policy-broker", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/356.", "created": "2016-08-31T10:54:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-08-29T14:28:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@9ecc0dc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hympi7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1014713478_*|*_1_*:*_1_*:*_35360_*|*_10007_*:*_1_*:*_18881272_*|*_5_*:*_1_*:*_3395408726_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_159909801"}], "description": "An `update-policy-broker` command will be helpful for users migrating brokers.\n\n*In Scope*\n* Add `update-policy-broker` command that will work like `update-policy-task` and `update-policy-repo` except for broker.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11220", "fixedVersions": ["RAZOR 1.5.0"], "id": "11220", "issueType": "Story", "key": "RAZOR-935", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-09-12T10:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add `update-policy-broker` command", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/364.", "created": "2016-10-11T18:59:00.000000"}], "components": ["Server"], "created": "2016-08-29T14:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6449809a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hymvof:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_6460577_*|*_1_*:*_1_*:*_111911_*|*_10007_*:*_1_*:*_156594866_*|*_5_*:*_1_*:*_694442901_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_3731436821"}], "description": "Now that Puppet 3 is approaching EOL, we should include a stock broker for Puppet 4.\n\nSince the ideal name for the broker is `puppet`, the right approach should be as follows:\n\n- Add an `update-policy-broker` command to ease migration\n- Rename existing `puppet` broker to `legacy-puppet`\n- Add `puppet` broker for the new AIO broker\n\nHelpful: [Existing community puppet-aio PR|https://github.com/puppetlabs/razor-server/pull/341]\n\n*In Scope*\n* Rename `puppet` broker to `legacy-puppet`\n* Add AIO `puppet` broker\n\n*Out of Scope*\n* Add `update-policy-broker` command (will be separate ticket)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11003", "fixedVersions": ["RAZOR 1.5.0"], "id": "11003", "issueType": "Story", "key": "RAZOR-934", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-10-13T16:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add Puppet AIO broker", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/355.", "created": "2016-08-23T16:18:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-08-23T14:51:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@75bd5274"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hymphz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1016297898_*|*_1_*:*_1_*:*_261203_*|*_10007_*:*_1_*:*_689021883_*|*_5_*:*_1_*:*_3395420233_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_4953357"}], "description": "Per https://github.com/puppetlabs/razor-server/pull/276:\n\nWithout running {{ntpdate}} before registering with the puppet master, sometimes, the agent can't retrieve a catalog with an error that says the certificate is not yet valid.\n\n{{ntpdate}} should run before the puppet or puppet-pe brokers communicate with the master if the {{ntpdate_server}} config is supplied.\n\nTo make this as generic as possible, both brokers should include a new, optional {{ntpdate_server}} config that defaults to *not running ntpdate*. We assume that many users will already have ntpdate configured on their network.\n\n*In Scope*\n* Update the {{puppet}} and {{puppet-pe}} brokers to synchronize the time before installing the agent.\n* Add a {{ntpdate_server}} config with the above default to the configuration.yaml of each broker.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11840", "fixedVersions": ["RAZOR 1.5.0"], "id": "11840", "issueType": "Bug", "key": "RAZOR-933", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-09-12T10:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Synchronize time in puppet broker", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Target at Everett.", "created": "2016-08-23T14:34:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Ready for review:\nhttps://github.com/puppetlabs/pe-docs-private/commit/64465225311d1275c84f7d9fa265edb3e28cf488", "created": "2016-10-03T13:43:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Reviewed.", "created": "2016-10-04T13:56:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Done/fixed on everett branch:\nhttps://github.com/puppetlabs/pe-docs-private/commit/1d17a5ead9042ea1d622511a913372f5e88f8166", "created": "2016-10-04T15:22:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-08-23T14:33:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4fc38992"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz8fhz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Oct/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_16355_*|*_10009_*:*_1_*:*_87221141_*|*_5_*:*_1_*:*_1475295768_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5142969_*|*_10005_*:*_1_*:*_3539358469"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11402", "fixedVersions": ["RAZOR 1.5.0"], "id": "11402", "issueType": "Sub-task", "key": "RAZOR-932", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": "11656", "parentSummary": "Add command to update a policy's referenced repo", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-10-04T15:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Update policy's repo", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this until the need for this feature is demonstrated.", "created": "2018-03-12T14:34:00.000000"}], "components": ["Server"], "created": "2016-08-23T12:58:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3faa4c5b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hymvo7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_793785_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_48907409004"}], "description": "Once https://puppet.atlassian.net/browse/RAZOR-930 is in place, a Xen task can easily be added to our stock offerings.\n\n*In Scope*\n* Update the Xen PR\\[1] to include a {{post_extract_script}} script instead of the manual `zcat` step in the README.\n* Support an error case if the Razor server does not have the {{zcat}} command.\n\n*Optional*\n* Include support for existing alternatives to {{zcat}}, if any exist.\n* Support the latest version of XenServer, instead of 6.2\n\n*Note*\n\\[1] The task can be based on a [previous PR|https://github.com/puppetlabs/razor-server/pull/262] submitted by kongluoxing.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10973", "fixedVersions": [], "id": "10973", "issueType": "Story", "key": "RAZOR-931", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2018-03-12T14:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Adapt XenServer PR to use `post_extract_script`", "timeSpent": "PT0S", "updated": "2018-03-12T14:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this until the need for a feature like this is demonstrated.", "created": "2018-03-12T14:19:00.000000"}], "components": ["Server"], "created": "2016-08-23T12:47:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@18745608"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hymvnj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_347375_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_41024116696_*|*_10005_*:*_1_*:*_7883481381"}], "description": "Sometimes, as is the case with XenServer, some functions need to be performed on the ISO after it is extracted in order to use it for iPXE provisioning. To enable this functionality more generally, tasks should be allowed to specify an ERB template script which will run immediately after the ISO has finished extracting, just prior to its move to its home in the `repo_store_root`.\n\nSteps involved:\n1. Allow `post_extract_script` as a new config in a task's `metadata.yaml`.\n2. Render the repo's task's `post_extract_script` template using `Tilt` (like with broker_types) to restrict which helper methods are visible to the template. \n3. After the ISO has been extracted, run the repo's task's `post_extract_script` synchronously.\n4. Log anything submitted to STDOUT as INFO.\n\nError cases:\n- Script does not exist or is not executable: Log a warning and skip execution.\n- Script exits with non-zero exit code. Log the exit code and STDERR output, then continue.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11624", "fixedVersions": [], "id": "11624", "issueType": "Story", "key": "RAZOR-930", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2018-03-12T14:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support script running after ISO is extracted", "timeSpent": "PT0S", "updated": "2018-03-12T14:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is already updated to use the broadcast interface:\u00a0https://github.com/puppetlabs/razor-server/commit/f2c79f95988d497d9f5885a66f1deebe20293e6d", "created": "2018-02-12T13:56:00.000000"}], "components": ["Server"], "created": "2016-08-23T12:17:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5afccca7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hymphr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_46492730379_*|*_6_*:*_1_*:*_0"}], "description": "{quote}I believe the naming has something to do with the PCI interface, but anyway the second interface is usually the primary, the first being lo.{quote}\n\nFrom https://github.com/puppetlabs/razor-server/pull/315\n\nA better fix may be to use the more generic option in that pull request:\n\n{code}\nip route | grep default | cut -d ' ' -f 5 | head -1\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11623", "fixedVersions": [], "id": "11623", "issueType": "Bug", "key": "RAZOR-929", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2018-02-12T13:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Strange interface names in RHEL tasks", "timeSpent": "PT0S", "updated": "2018-02-12T13:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/353.", "created": "2016-08-15T11:00:00.000000"}], "components": ["Server"], "created": "2016-08-15T09:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ab24ea1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hynuvb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Aug/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4414601_*|*_10007_*:*_1_*:*_1211410618_*|*_5_*:*_1_*:*_4599657682_*|*_6_*:*_1_*:*_0"}], "description": "Whenever a hook would run, the relative directory is changed to the hook's directory. That's normally not an issue, but in for example spec tests, an accurate relative directory may be relied upon.\n\nThe fix is to simply restore the old working directory after the hook \nexecution completes.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11826", "fixedVersions": ["RAZOR 1.5.0"], "id": "11826", "issueType": "Bug", "key": "RAZOR-928", "labels": ["davis-ss", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-08-29T11:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Hooks alter relative directories", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623cfdfb8d8b9c0068b93e3c", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/352.", "created": "2016-07-20T20:11:00.000000"}], "components": ["Server"], "created": "2016-07-20T20:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "On Ubuntu, run `razor create-repo` with `iso-url` supplied. Wait for the download and extract process to complete. Run `razor delete-repo` and see the repo destroyed."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7112ab11"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hynuv3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_101832_*|*_5_*:*_1_*:*_2161872312_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_3034328750_*|*_10005_*:*_1_*:*_2828423126"}], "description": "An error is occurring whenever a user attempts to delete a repo on Ubuntu \\[Xenial, at least\\]. The stacktrace yielded is:\n{noformat}\n16:27:23 - NotImplementedError - No message available:\n         org/jruby/RubyFile.java:889:in `lchmod'\n/opt/puppetlabs/server/apps/razor-server/share/torquebox/jruby/lib/ruby/1.9/fileutils.rb:1331:in\n`chmod'\n{noformat}\n\n*Background:*\nThis is a bug in Ruby's FileUtils module. The `lchmod` command is not implemented on every distro, so FileUtils performs {{lchmod 0}}, which is supposed to determine whether {{lchmod}} is available. However, on Ubuntu, this returns 0 rather than the NotImplementedException, meaning a runtime error occurs when the real {{lchmod <value>, <filename>}} gets called.\n\nThe proposed patch should avoid the lchmod shenanigans altogether by insisting that {{lchmod}} does not exist.\n\nFrom: https://groups.google.com/forum/#!topic/puppet-razor/FvZ6Fnpcbw8", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11286", "fixedVersions": ["RAZOR 1.5.0"], "id": "11286", "issueType": "Bug", "key": "RAZOR-926", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-09-26T16:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "NotImplementedError for `lchmod` on Ubuntu", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/349.", "created": "2016-07-08T11:31:00.000000"}], "components": ["Server"], "created": "2016-07-08T11:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@18dc3941"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hynux3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_284384_*|*_5_*:*_1_*:*_9092353443_*|*_6_*:*_1_*:*_0"}], "description": "From [duritong|https://github.com/puppetlabs/razor-server/pull/349#issue-162639962]:\n{quote}Newer facter version are returning booleans and not strings. This\nmade our PXE boot always wanting to do sanboot. With this change\nwe make sure that still both version work.{quote}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11046", "fixedVersions": ["RAZOR 1.5.0"], "id": "11046", "issueType": "Bug", "key": "RAZOR-925", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-07-08T11:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Newer Facter causes repeated sanboot", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "cc/ [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:0f255f44-5dce-4849-80f5-c0db60d9b049] [~accountid:557058:3a3de6c6-95b1-47b3-a52a-6a6865ff9241] \n\nWe've implemented razor-server packaging that uses vanagon to build. We should take advantage of this change to also update the razor ci pipeline. The current pipeline runs tests, and then tries to kick off a build job. However, the build job no longer exists under the name the test job expects. As a result, razor-server foss builds haven't happened in ci in a long time.\n\nhttps://jenkins.puppetlabs.com/view/legacy_razor/view/all/", "created": "2016-06-09T15:53:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "Who should do this?", "created": "2016-06-22T16:53:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I believe it's traditionally been a collaboration between QE and the project owners who take on this kind of work.", "created": "2016-06-22T17:36:00.000000"}, {"author": "557058:55b23daa-f1aa-41fd-b10d-bf49a61932da", "body": "Closing in favor of RAZOR-1053.", "created": "2018-04-17T12:39:00.000000"}], "components": [], "created": "2016-06-09T15: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@f58f34e"}, {"fieldName": "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": "RAZOR-991"}, {"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|hz6wzr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1126879305_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_57354395045"}], "epicLinkSummary": "Spike on razor packaging process", "estimate": "PT0S", "externalId": "10969", "fixedVersions": [], "id": "10969", "issueType": "Task", "key": "RAZOR-924", "labels": [], "originalEstimate": "PT0S", "parent": "11584", "parentSummary": "Spike on razor packaging process", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Duplicate", "resolutionDate": "2018-04-17T12:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create JJB CI Pipeline for FOSS Razor testing", "timeSpent": "PT0S", "updated": "2018-04-17T12:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The implementation of this should probably look for a 'hostname' key inside the node's metadata, followed by the 'hostname' property on the node if that doesn't exist.", "created": "2016-06-07T16:06:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "Is it possible to do this in such a way that it never gives wrong information?", "created": "2016-08-17T15:11:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Not as long as we let users create their own tasks (which might not report the hostname back to Razor). If they use stock tasks, the information will be accurate.", "created": "2018-04-02T09:57:00.000000"}], "components": [], "created": "2016-06-07T15:28:00.000000", "creator": "557058:8db25e7a-4bdb-4fe2-af6b-f0a9bc714e12", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@18f1de7a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3zq:9"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Jun/16"}], "description": "There have been at least two requests for adding hostname to the {{razor nodes}} output [1|https://groups.google.com/forum/#!topic/puppet-razor/IXtyAjckH70]. Maybe we should consider adding that (perhaps with an option)?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11285", "fixedVersions": [], "id": "11285", "issueType": "Improvement", "key": "RAZOR-923", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:8db25e7a-4bdb-4fe2-af6b-f0a9bc714e12", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add hostname to razor nodes output", "timeSpent": "PT0S", "updated": "2021-09-30T12:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "created": "2016-06-02T01:39:00.000000", "name": "capture one.PNG", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10172"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Can you try running `mk register` inside the microkernel to see if any errors are reported through STDOUT?", "created": "2016-06-02T11:46:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "body": "Could you please explain how would i do it as i am new here don't  knew much about microkernal  and how to use mk register command inside microkernal\ncould you please guide how would i install linux node through razor as i am getting the error i have pasted it i am able to windows node through it .", "created": "2016-06-03T06:11:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user Where are you seeing these errors? If you can get to the microkernel login screen, `root` and `thincrust` are the username/password to log in. From there, at the prompt, you can issue `mk register`.", "created": "2016-06-03T11:41:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "body": "There was no microkernal which is loaded these errors continuously to show in loop back order  however i have also created in another machine in which microkernal is loaded and got stuck there no OS loads  i tried to enter into microkernal and able to login successfully i tries to mk register it is showing the following errors \n\ncould not  retrieve fact ='ipaddress' , resolution=<'anonymous'>:could not execute 'host localhost' : command not found\n\nerror running register : no network interfaces  detected ", "created": "2016-06-09T02:29:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user That is helpful. Can you tell me about the hardware on the machines you are using? It seems like the network drivers that you need are not included in the default CentOS 7 build that we use for the microkernel. If you wish to include them, you can rebuild the microkernel following the steps in this repository: https://github.com/puppetlabs/razor-el-mk", "created": "2016-06-09T12:35:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "body": " I am using vm i created multiple vm and configured razor on 1 node and tries to boot other node with razor \n \nEarlier i was able to boot linux node but now it got stuck i am still able to boot windows but not able to boot linux node i am missing something or something else could you please guide what is happening..", "created": "2016-06-10T03:20:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user Can you explain what you mean by \"Windows node\" and \"Linux node\"? Did you go through the steps to create a WinPE image so Razor can install the Windows OS?", "created": "2016-06-17T13:02:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "This hasn't had any activity in a while. Reopen if you're still experiencing the problem.", "created": "2016-07-20T16:39:00.000000"}], "components": ["Microkernel"], "created": "2016-06-02T01:44:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f1e51c2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6qnz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_644431793_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_3556504038"}], "description": "Hello i was trying to deploy Linux OS through razor it getting some error could you please anyone please guide i also tries to find it but didn't get  exact solutions for this is there any issue in my micro kernal as i dint do any modifications just followed the steps here are the logs i am getting\n \n \n\n\n", "environment": "linux", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11558", "fixedVersions": [], "id": "11558", "issueType": "Bug", "key": "RAZOR-922", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "resolution": "Cannot Reproduce", "resolutionDate": "2016-07-20T16:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Linux os wont boot through razor ", "timeSpent": "PT0S", "updated": "2016-07-20T16:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "created": "2016-06-03T06:13:00.000000", "name": "razor .example error.PNG", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10173"}, {"attacher": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "created": "2016-06-03T06:16:00.000000", "name": "razor error.PNG", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10205"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user On the second error, are you able to log in despite what looks like just a warning?", "created": "2016-06-03T11:30:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "body": "Hello Scott \nI was not bale to login actually this screen comes but i wasn't able to login with any credentials provided in the razor policy \nThis error comes jut after the boot .\n\nEarlier after booting it installs the OS then this login screen appears on which i was able to login .\n\nPlease guidee", "created": "2016-06-03T23:06:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user The credentials to log into the CentOS 7 microkernel are \"root\" for the username and \"thincrust\" as the password. What you are seeing appear to be warnings, not errors, so I suspect you should be able to ignore the \"no valid rapl domains\" message and continue trying to log in with these credentials. Let me know if that helps.", "created": "2016-06-09T12:43:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "body": "I am able to login this centos 7 microkernal with your provided credentials but earlier this wont come earlier centos os loads then i was able to load to centos machine with  credentials i have given in razor policyy..\n\nPlease help i am stuckk", "created": "2016-06-10T03:14:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user Where are you stuck? I understand the microkernel comes up, you can log into it, then it continues through the policy to install CentOS?", "created": "2016-06-17T12:58:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "Closing due to inactivity. Please reopen if you are still having problems.", "created": "2016-07-20T16:40:00.000000"}], "components": ["Server"], "created": "2016-06-02T00:59:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2882c377"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6qnj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_647123680_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_3556553579"}], "description": "Hello i was working on razor was able to successfully boot Linux node but after booting it show some weird error which i can figure out what it is please help however i am able to boot and install  windows node successfully kindly suggest and guide me what mistake i am doing \nHere is the error i am facing \n\n[4.0657] Host SMbus controller not enabled !\n[4.91234]   sd2.000 Asuming drive through cache :write through.\n\nafter this error it goes to another screen and got stuck showing statement\n[5.97}intel_rapl : no valid rapl domains found in the  package 0\n\nPlease guide \n\n\n\n\n\n\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11400", "fixedVersions": [], "id": "11400", "issueType": "Bug", "key": "RAZOR-921", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:7751cf96-8511-4460-ab99-c382efa72e93", "resolution": "Cannot Reproduce", "resolutionDate": "2016-07-20T16:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor linux nodes dont get get booted by linux", "timeSpent": "PT0S", "updated": "2016-07-20T16:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@49564614"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6q1b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2172_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430268789"}], "description": "(Initial planned release date: 2016-06-14)\n\nClose any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%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": "11449", "fixedVersions": [], "id": "11449", "issueType": "Sub-task", "key": "RAZOR-920", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@7bc11e02"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6q13:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2149_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430272702"}], "description": "(Initial planned release date: 2016-06-14)\n\n  * [~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": "11397", "fixedVersions": [], "id": "11397", "issueType": "Sub-task", "key": "RAZOR-919", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@34f737e4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6q0v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2069_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430279252"}], "description": "(Initial planned release date: 2016-06-14)\n\nPush the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11284", "fixedVersions": [], "id": "11284", "issueType": "Sub-task", "key": "RAZOR-918", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@5125848"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6q0n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2254_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430283470"}], "description": "(Initial planned release date: 2016-06-14)\n\nPush 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": "11044", "fixedVersions": [], "id": "11044", "issueType": "Sub-task", "key": "RAZOR-917", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@6774a491"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6q0f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2119_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430286888"}], "description": "(Initial planned release date: 2016-06-14)\n\nThe 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": "11001", "fixedVersions": [], "id": "11001", "issueType": "Sub-task", "key": "RAZOR-916", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@7c42c032"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6q07:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2135_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430291550"}], "description": "(Initial planned release date: 2016-06-14)\n\nThis 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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10967", "fixedVersions": [], "id": "10967", "issueType": "Sub-task", "key": "RAZOR-915", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before noon PST) (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@9c365f1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pzz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2137_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430295166"}], "description": "(Initial planned release date: 2016-06-14)\n\nProcedure 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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11957", "fixedVersions": [], "id": "11957", "issueType": "Sub-task", "key": "RAZOR-914", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@3c553df8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pzr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2266_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430296752"}], "description": "(Initial planned release date: 2016-06-14)\n\nTag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "11824", "fixedVersions": [], "id": "11824", "issueType": "Sub-task", "key": "RAZOR-913", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11: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@3961ce76"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pzj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2282_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430300864"}], "description": "(Initial planned release date: 2016-06-14)\n\nCollaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11620", "fixedVersions": [], "id": "11620", "issueType": "Sub-task", "key": "RAZOR-912", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:30: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@3efbff5a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pzb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2215_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430309189"}], "description": "(Initial planned release date: 2016-06-14)\n\nThis 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.Z', Save as \"Introduced in X.Y.Z\", 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": "11557", "fixedVersions": [], "id": "11557", "issueType": "Sub-task", "key": "RAZOR-911", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one? (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:30: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@24cc1d9a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pz3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2257_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430308744"}], "description": "(Initial planned release date: 2016-06-14)\n\nFor 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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11448", "fixedVersions": [], "id": "11448", "issueType": "Sub-task", "key": "RAZOR-910", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:30: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@13629c5e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pyv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2136_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430315412"}], "description": "(Initial planned release date: 2016-06-14)\n\nBump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11267", "fixedVersions": [], "id": "11267", "issueType": "Sub-task", "key": "RAZOR-909", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:30: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@787d6bb6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pyn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2268_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2430319730"}], "description": "(Initial planned release date: 2016-06-14)\n\nUse the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11283", "fixedVersions": [], "id": "11283", "issueType": "Sub-task", "key": "RAZOR-908", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:30: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@589c0067"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pyf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2179_*|*_6_*:*_2_*:*_66971_*|*_10006_*:*_1_*:*_2430258520"}], "description": "(Initial planned release date: 2016-06-14)\n\nIf 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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%222.0.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11043", "fixedVersions": [], "id": "11043", "issueType": "Sub-task", "key": "RAZOR-907", "labels": [], "originalEstimate": "PT0S", "parent": "11000", "parentSummary": "razor-client 1.4.0 2016-06-29 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release? (RAZOR 2.0.0)", "timeSpent": "PT0S", "updated": "2016-06-29T14:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this as no client release is necessary.", "created": "2016-06-29T14:34:00.000000"}], "components": [], "created": "2016-06-01T11:30: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@1a8e7f8b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6py7:"}, {"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": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2092_*|*_3_*:*_1_*:*_14755197_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2415486461"}], "description": "razor-client 2.0.0 2016-06-14 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": "11000", "fixedVersions": [], "id": "11000", "issueType": "Task", "key": "RAZOR-906", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Do", "resolutionDate": "2016-06-29T14:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client 1.4.0 2016-06-29 Release", "timeSpent": "PT0S", "updated": "2016-06-30T11:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:29: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@4d9dddac"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pxz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2208_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3053791547"}], "description": "(Initial planned release date: 2016-06-14)\n\nClose any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%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": "11823", "fixedVersions": [], "id": "11823", "issueType": "Sub-task", "key": "RAZOR-905", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "https://groups.google.com/forum/#!topic/puppet-razor/BUB_yjrGIfk", "created": "2016-07-06T19:45:00.000000"}], "components": [], "created": "2016-06-01T11:29: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@419382c1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pxr:"}, {"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_*:*_2249_*|*_5_*:*_1_*:*_65626_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3053729719"}], "description": "(Initial planned release date: 2016-06-14)\n\n  * [~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": "11619", "fixedVersions": [], "id": "11619", "issueType": "Sub-task", "key": "RAZOR-904", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:29: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@1fc2df5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pxj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2254_*|*_5_*:*_1_*:*_22681471_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3031117495"}], "description": "(Initial planned release date: 2016-06-14)\n\nPush the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11556", "fixedVersions": [], "id": "11556", "issueType": "Sub-task", "key": "RAZOR-903", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T13:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:29: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@377b7d57"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pxb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2332_*|*_3_*:*_1_*:*_2548324_*|*_5_*:*_1_*:*_27234439_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3024020841"}], "description": "(Initial planned release date: 2016-06-14)\n\nPush 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": "11372", "fixedVersions": [], "id": "11372", "issueType": "Sub-task", "key": "RAZOR-902", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:29: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@2b217228"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6px3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2321_*|*_5_*:*_1_*:*_104679664_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2949128549"}], "description": "(Initial planned release date: 2016-06-14)\n\nThe 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": "11265", "fixedVersions": [], "id": "11265", "issueType": "Sub-task", "key": "RAZOR-901", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Attended:\n- Melissa Stone\n- Scott McClellan\n- Steve Axthelm\n- Lindsey Smith", "created": "2016-07-06T10:27:00.000000"}], "components": [], "created": "2016-06-01T11:29: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@530cb7aa"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pwv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jul/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2253_*|*_5_*:*_1_*:*_33506996_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3020304574"}], "description": "(Initial planned release date: 2016-06-14)\n\nThis 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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11230", "fixedVersions": [], "id": "11230", "issueType": "Sub-task", "key": "RAZOR-900", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T10:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before noon PST) (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Packages are available at http://builds.puppetlabs.lan/razor/1.4.0/", "created": "2016-07-05T14:33:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Smoke tested against CentOS 6, CentOS 7, Ubuntu Trusty, and Ubuntu Xenial.", "created": "2016-07-06T10:27:00.000000"}], "components": [], "created": "2016-06-01T11:29: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@4d25c860"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pwn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jul/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2221_*|*_5_*:*_1_*:*_33567945_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3020247800"}], "description": "(Initial planned release date: 2016-06-14)\n\nProcedure 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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11041", "fixedVersions": [], "id": "11041", "issueType": "Sub-task", "key": "RAZOR-899", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T10:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] SHA for razor-server is -ff60652a7fdb0592b9883728cac997efa791cb36-.\n\nEDIT: New SHA: a2f0e43f71c5a5d38bf110438f19940b8b093d3d", "created": "2016-06-30T12:02:00.000000"}], "components": [], "created": "2016-06-01T11:29: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@153c7373"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pwf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2241_*|*_5_*:*_1_*:*_105215182_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2948606427"}], "description": "(Initial planned release date: 2016-06-14)\n\nTag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "10999", "fixedVersions": [], "id": "10999", "issueType": "Sub-task", "key": "RAZOR-898", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "From https://github.com/puppetlabs/razor-vanagon/pull/1:\n\nThings of note:\n* The service is not restarted on upgrade (consistent with current packaging)\n* Razor is not redeployed on upgrade(consistent with current packaging)\n* config.yaml moved from `/etc/razor` to `/etc/puppetlabs/razor-server`\n** `/etc/razor/config.yaml` is preserved on upgrade on debian systems, but not on redhat systems.\n* `razor-admin` is no longer on the path by default. The user must add `/opt/puppetlabs/bin` or `/opt/puppetlabs/server/bin` to the path to have razor-admin available on the path.\n\nI believe the nature of these changes not only requires a major version bump, but also significant documentation. Updating to this version should require a partial-migration. Changes to config files will not be preserved, so users will have to manually transfer pertinent information. ", "created": "2016-06-01T11:31:00.000000"}], "components": [], "created": "2016-06-01T11:29: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@2f55629e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pw7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2291_*|*_5_*:*_1_*:*_615364758_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2438459635"}], "description": "(Initial planned release date: 2016-06-14)\n\nCollaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10965", "fixedVersions": [], "id": "10965", "issueType": "Sub-task", "key": "RAZOR-897", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:29: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@1af5a61f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pvz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2216_*|*_5_*:*_1_*:*_615445019_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2438384845"}], "description": "(Initial planned release date: 2016-06-14)\n\nThis 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.Z', Save as \"Introduced in X.Y.Z\", 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": "11956", "fixedVersions": [], "id": "11956", "issueType": "Sub-task", "key": "RAZOR-896", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-06-29T16:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one? (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:29: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@4003085c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pvr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2132_*|*_5_*:*_1_*:*_615468307_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2438365010"}], "description": "(Initial planned release date: 2016-06-14)\n\nFor 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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11759", "fixedVersions": [], "id": "11759", "issueType": "Sub-task", "key": "RAZOR-895", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:29: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@54edc7c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pvj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2380_*|*_5_*:*_1_*:*_615479056_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2438358093"}], "description": "(Initial planned release date: 2016-06-14)\n\nBump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11618", "fixedVersions": [], "id": "11618", "issueType": "Sub-task", "key": "RAZOR-894", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:29: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@1c452a1d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pvb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2324_*|*_5_*:*_1_*:*_615495558_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2438344881"}], "description": "(Initial planned release date: 2016-06-14)\n\nUse the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11555", "fixedVersions": [], "id": "11555", "issueType": "Sub-task", "key": "RAZOR-893", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-06-29T16:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-06-01T11:28: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@c3ac2c9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6pv3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2286_*|*_5_*:*_1_*:*_615564831_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2438280931"}], "description": "(Initial planned release date: 2016-06-14)\n\nIf 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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%222.0.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11371", "fixedVersions": [], "id": "11371", "issueType": "Sub-task", "key": "RAZOR-892", "labels": [], "originalEstimate": "PT0S", "parent": "11263", "parentSummary": "razor-server 1.4.0 2016-06-30 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-06-29T16:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release? (RAZOR 1.4.0)", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:0a7f5dde-2148-4d2c-8224-6d6f86ebc9c4] we should get this release out sooner rather than later. When works for you?", "created": "2016-06-21T15:14:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] How about next Tuesday (6/28)?", "created": "2016-06-22T10:27:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Wednesday (6/29) would be better for us", "created": "2016-06-22T12:12:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Sorry for not noticing this any earlier: why are we going to a new major version here ? What's triggering the major version bump ?", "created": "2016-06-22T21:06:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I've changed the pathing. See https://github.com/puppetlabs/puppet-specifications/pull/77 for a summary", "created": "2016-06-22T22:33:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "After further conversation, this does not need to be a major release, since it is not at all changing the API for Razor. We will release as 1.4.0 instead.", "created": "2016-06-29T10:30:00.000000"}], "components": [], "created": "2016-06-01T11:28: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@2a87dfae"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyn41j:"}, {"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": "Node Management"}, {"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": "22/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2095_*|*_3_*:*_1_*:*_638276635_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2415588520"}], "description": "razor-server 2.0.0 2016-06-14 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": "11263", "fixedVersions": [], "id": "11263", "issueType": "Task", "key": "RAZOR-891", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Done", "resolutionDate": "2016-07-06T19:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-server 1.4.0 2016-06-30 Release", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2d4897e6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6ebr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2091_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_4326301544"}], "description": "(Initial planned release date: 2016-05-19)\n\nClose any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.3.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": "11757", "fixedVersions": [], "id": "11757", "issueType": "Sub-task", "key": "RAZOR-890", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67c9053a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6ebj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2221_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_4326304969"}], "description": "(Initial planned release date: 2016-05-19)\n\n  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]: 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": "11617", "fixedVersions": [], "id": "11617", "issueType": "Sub-task", "key": "RAZOR-889", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Minor additions to https://github.com/puppetlabs/razor-server/wiki/Configuration.", "created": "2016-05-19T19:20:00.000000"}], "components": [], "created": "2016-05-17T15:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31701909"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6ebb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2175_*|*_5_*:*_1_*:*_4138033075_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_188276551"}], "description": "(Initial planned release date: 2016-05-19)\n\nPush the documentation updates to docs.puppetlabs.com.\n\nDependencies:\n  * Go / No Go meeting (Status - Ship it!)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11554", "fixedVersions": [], "id": "11554", "issueType": "Sub-task", "key": "RAZOR-888", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-05-19T19:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@20aabbce"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6eb3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2160_*|*_5_*:*_1_*:*_4146700865_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_179613040"}], "description": "(Initial planned release date: 2016-05-19)\n\nPush 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": "11370", "fixedVersions": [], "id": "11370", "issueType": "Sub-task", "key": "RAZOR-887", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3e9eab0f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6eav:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2120_*|*_5_*:*_1_*:*_4146706710_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_179610816"}], "description": "(Initial planned release date: 2016-05-19)\n\nThe 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": "11260", "fixedVersions": [], "id": "11260", "issueType": "Sub-task", "key": "RAZOR-886", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Resolved via RAZOR-873.", "created": "2016-05-19T19:12:00.000000"}], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@77c43568"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6ean:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2316_*|*_5_*:*_1_*:*_4138475767_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_187844952"}], "description": "(Initial planned release date: 2016-05-19)\n\nThis 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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11228", "fixedVersions": [], "id": "11228", "issueType": "Sub-task", "key": "RAZOR-885", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-05-19T19:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before noon PST) (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Smoke tests passed on CentOS 6, CentOS 7, and Ubuntu Trusty.", "created": "2016-05-19T19:11:00.000000"}], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@256695bf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6eaf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2297_*|*_5_*:*_1_*:*_4138522730_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_187803074"}], "description": "(Initial planned release date: 2016-05-19)\n\nProcedure 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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "10998", "fixedVersions": [], "id": "10998", "issueType": "Sub-task", "key": "RAZOR-884", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-05-19T19:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab] razor-client SHA is 758e113d683580c28eb3227b6aee99c031fc2b63.", "created": "2016-05-18T14:39:00.000000"}, {"author": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] artifacts are available at http://builds.puppetlabs.lan/razor-client/1.3.0/artifacts/", "created": "2016-05-18T15:26:00.000000"}], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@240755bf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6ea7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2238_*|*_3_*:*_1_*:*_326765_*|*_5_*:*_1_*:*_4238427717_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_87575291"}], "description": "(Initial planned release date: 2016-05-19)\n\nTag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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:31c596d1-7e27-4c91-bc18-1254edb3caab] 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": "10963", "fixedVersions": [], "id": "10963", "issueType": "Sub-task", "key": "RAZOR-883", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@168bf30c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e9z:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2204_*|*_5_*:*_1_*:*_4241619102_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_84715054"}], "description": "(Initial planned release date: 2016-05-19)\n\nCollaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11955", "fixedVersions": [], "id": "11955", "issueType": "Sub-task", "key": "RAZOR-882", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7f15acaf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e9r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2303_*|*_5_*:*_1_*:*_4241637129_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_84700300"}], "description": "(Initial planned release date: 2016-05-19)\n\nThis 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.Z', Save as \"Introduced in X.Y.Z\", 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": "11754", "fixedVersions": [], "id": "11754", "issueType": "Sub-task", "key": "RAZOR-881", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-05-18T14:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one? (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2d4594b4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e9j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2095_*|*_5_*:*_1_*:*_4242410705_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_83931045"}], "description": "(Initial planned release date: 2016-05-19)\n\nFor 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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11616", "fixedVersions": [], "id": "11616", "issueType": "Sub-task", "key": "RAZOR-880", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@452c903f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e9b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2240_*|*_5_*:*_1_*:*_4242423720_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_83921533"}], "description": "(Initial planned release date: 2016-05-19)\n\nBump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11553", "fixedVersions": [], "id": "11553", "issueType": "Sub-task", "key": "RAZOR-879", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@70f1ecbe"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e93:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2272_*|*_5_*:*_1_*:*_4242442858_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_83906599"}], "description": "(Initial planned release date: 2016-05-19)\n\nUse the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11369", "fixedVersions": [], "id": "11369", "issueType": "Sub-task", "key": "RAZOR-878", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-05-18T14:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3caeebb1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e8v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2340_*|*_5_*:*_1_*:*_4242451521_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_83901889"}], "description": "(Initial planned release date: 2016-05-19)\n\nIf 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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.3.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11258", "fixedVersions": [], "id": "11258", "issueType": "Sub-task", "key": "RAZOR-877", "labels": [], "originalEstimate": "PT0S", "parent": "11226", "parentSummary": "razor-client 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-05-18T14:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release? (RAZOR 1.3.0)", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T15:01:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@497a2ea8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e8n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2015_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_4326376444"}], "description": "razor-client 1.3.0 2016-05-19 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": "11226", "fixedVersions": [], "id": "11226", "issueType": "Task", "key": "RAZOR-876", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Done", "resolutionDate": "2016-07-06T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client 1.3.0 2016-05-19 Release", "timeSpent": "PT0S", "updated": "2016-07-06T16:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:44:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3b9df030"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e7j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4327524979_*|*_6_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.3.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": "11368", "fixedVersions": [], "id": "11368", "issueType": "Sub-task", "key": "RAZOR-875", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@63365020"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e7b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_18407_*|*_1_*:*_1_*:*_4327271673_*|*_5_*:*_1_*:*_236156_*|*_6_*:*_1_*:*_0"}], "description": "  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]: 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": "11256", "fixedVersions": [], "id": "11256", "issueType": "Sub-task", "key": "RAZOR-874", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Minor updates to https://github.com/puppetlabs/razor-server/wiki/Configuration.", "created": "2016-05-19T19:20:00.000000"}], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@75b0e4b7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e73:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_189394145_*|*_5_*:*_1_*:*_4138135407_*|*_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": "11224", "fixedVersions": [], "id": "11224", "issueType": "Sub-task", "key": "RAZOR-873", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-19T19:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1550af90"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e6v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_180675508_*|*_5_*:*_1_*:*_4146854939_*|*_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": "11039", "fixedVersions": [], "id": "11039", "issueType": "Sub-task", "key": "RAZOR-872", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@134e69c4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e6n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_180669060_*|*_5_*:*_1_*:*_4146864673_*|*_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": "10931", "fixedVersions": [], "id": "10931", "issueType": "Sub-task", "key": "RAZOR-871", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "In attendance:\n[~accountid:557058:db3c8c5c-5825-4424-a788-64c2fa922e24]\n[~accountid:557058:8db25e7a-4bdb-4fe2-af6b-f0a9bc714e12]\n[~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]\n[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]", "created": "2016-05-19T19:10:00.000000"}], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a41dc87"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e6f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_188779588_*|*_5_*:*_1_*:*_4138755511_*|*_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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10961", "fixedVersions": [], "id": "10961", "issueType": "Sub-task", "key": "RAZOR-870", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-19T19:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Smoke tests passed on CentOS 6, CentOS 7, and Ubuntu Trusty.", "created": "2016-05-19T19:09:00.000000"}], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@61f6cea9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e67:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_188743953_*|*_5_*:*_1_*:*_4138794067_*|*_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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11954", "fixedVersions": [], "id": "11954", "issueType": "Sub-task", "key": "RAZOR-869", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-19T19:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab] SHA for razor-server is 10f8e73a88b0a8825782b9af9a3a8c3f9dfb2d75.", "created": "2016-05-18T14:39:00.000000"}, {"author": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] that SHA doesn't seem to be in the upstream tree.", "created": "2016-05-18T15:24:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab] You're correct, I didn't get that commit pushed. It is in place now.", "created": "2016-05-18T16:19:00.000000"}, {"author": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "body": "Packages available at http://builds.puppetlabs.lan/razor-server/1.3.0/", "created": "2016-05-18T18:32:00.000000"}], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2deee2f4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e5z:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_86186105_*|*_3_*:*_1_*:*_11347943_*|*_5_*:*_1_*:*_4227431404_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2574129"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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:31c596d1-7e27-4c91-bc18-1254edb3caab] 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": "11753", "fixedVersions": [], "id": "11753", "issueType": "Sub-task", "key": "RAZOR-868", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@33d65483"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e5r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85964986_*|*_5_*:*_1_*:*_4241577075_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11615", "fixedVersions": [], "id": "11615", "issueType": "Sub-task", "key": "RAZOR-867", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3145d570"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e5j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85917386_*|*_5_*:*_1_*:*_4241627421_*|*_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.Z', Save as \"Introduced in X.Y.Z\", 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": "11519", "fixedVersions": [], "id": "11519", "issueType": "Sub-task", "key": "RAZOR-866", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@8f8959d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e5b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85911041_*|*_5_*:*_1_*:*_4241635643_*|*_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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11367", "fixedVersions": [], "id": "11367", "issueType": "Sub-task", "key": "RAZOR-865", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1de3fe4d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e53:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85884537_*|*_5_*:*_2_*:*_4241663954_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11254", "fixedVersions": [], "id": "11254", "issueType": "Sub-task", "key": "RAZOR-864", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@72696da7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e4v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85837575_*|*_5_*:*_2_*:*_4241714084_*|*_6_*:*_1_*:*_0"}], "description": "Use the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11222", "fixedVersions": [], "id": "11222", "issueType": "Sub-task", "key": "RAZOR-863", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@442c04d8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e4n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85832122_*|*_5_*:*_1_*:*_4241720922_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.3.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11037", "fixedVersions": [], "id": "11037", "issueType": "Sub-task", "key": "RAZOR-862", "labels": [], "originalEstimate": "PT0S", "parent": "10929", "parentSummary": "razor-server 1.3.0 2016-05-19 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2016-07-06T16:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-05-17T14:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@47fedf4d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz6e4f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4327290758_*|*_6_*:*_1_*:*_0"}], "description": "razor-server 1.3.0 2016-05-19 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": "10929", "fixedVersions": [], "id": "10929", "issueType": "Task", "key": "RAZOR-861", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-07-06T16:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-server 1.3.0 2016-05-19 Release", "timeSpent": "PT0S", "updated": "2016-07-06T16:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] This should be good-to-go as well.", "created": "2018-03-12T14:06:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "I revised the main Using the Razor API page for clarity in 2018.1 and later.\n\nUpdate here: [https://docs-preview.webteam.puppet.com/docs/pe/2018.1/razor/using_the_razor_api.html#using-the-razor-api]\nCredentials here:\u00a0https://confluence.puppetlabs.com/pages/viewpage.action?spaceKey=COM&title=Puppet.com+access", "created": "2018-04-20T16:11:00.000000"}], "components": [], "created": "2016-05-10T09:33:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1064c2f8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz67hr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Mar/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_38013_*|*_3_*:*_1_*:*_4115693_*|*_5_*:*_1_*:*_328639756_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3292596752_*|*_10005_*:*_2_*:*_58071106352"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11517", "fixedVersions": [], "id": "11517", "issueType": "Task", "key": "RAZOR-860", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2018-04-20T16:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Rewrite \"Using the Razor API\" page", "timeSpent": "PT0S", "updated": "2018-04-24T11:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Can you point this one?", "created": "2016-05-03T17:23:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Added to grooming for pointing.", "created": "2016-05-05T10:54:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/71.", "created": "2017-01-04T19:34:00.000000"}], "components": ["Client"], "created": "2016-05-03T17:23:00.000000", "creator": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67bc82a7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hympgn:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_149593802_*|*_10007_*:*_1_*:*_1871066009_*|*_3_*:*_1_*:*_1382607265_*|*_5_*:*_1_*:*_3647430360_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3053632054_*|*_10005_*:*_1_*:*_16680015886"}], "description": "The Client Platform team will be converting the Ruby i18n library into a gem. The gem will handle locale negotiation, set the Accept-Language header for API requests, and check the user's locale in their environment settings. \n\nAdding the gem to the Razor client will resolve RAZOR-767 and RAZOR-652.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11953", "fixedVersions": ["RAZOR 1.6.1"], "id": "11953", "issueType": "Task", "key": "RAZOR-858", "labels": ["i18n", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add the Ruby i18n gem to the Razor Client", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Can you point this one?", "created": "2016-05-03T16:51:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709] Added to grooming session for pointing.", "created": "2016-05-05T10:54:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The work on this was completed via RAZOR-651.", "created": "2017-04-05T11:28:00.000000"}], "components": [], "created": "2016-05-03T16:50:00.000000", "creator": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@708aa9c7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hymp3j:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_151549332_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_28945940013"}], "description": "The Ruby i18n gem will resolve some outstanding issues for i18n in Razor, including locale negotiation.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10920", "fixedVersions": ["RAZOR 1.6.1"], "id": "10920", "issueType": "Task", "key": "RAZOR-857", "labels": ["i18n"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "resolution": "Duplicate", "resolutionDate": "2017-04-05T11:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Replace the i18n library in Razor server with the i18n gem", "timeSpent": "PT0S", "updated": "2017-04-05T11:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Emailed questions to [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4].", "created": "2016-05-02T14:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Reviewed.", "created": "2016-05-11T10:21:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Added to Couch branch.", "created": "2016-05-11T10:54:00.000000"}], "components": ["Server"], "created": "2016-04-29T10:47:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@45302589"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz607z:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_18280_*|*_10007_*:*_1_*:*_1989932_*|*_3_*:*_1_*:*_510733823_*|*_10009_*:*_1_*:*_157140456_*|*_4_*:*_1_*:*_12567_*|*_5_*:*_1_*:*_25891415471_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_93198573_*|*_10005_*:*_1_*:*_274112031"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11952", "fixedVersions": ["RAZOR 1.3.0"], "id": "11952", "issueType": "Sub-task", "key": "RAZOR-856", "labels": [], "originalEstimate": "PT0S", "parent": "11078", "parentSummary": "Add `razor config` collection to show which settings Razor is using", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-05-11T10:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs - razor config", "timeSpent": "PT0S", "updated": "2017-03-07T01:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c9d44dd9-5d7c-4e89-ae88-e4ed17668ccf", "body": "[This bug|https://bugzilla.redhat.com/show_bug.cgi?id=1285810] led to the answer. Tar is being removed in the microkernel.ks causing the chain of failures. Removing the statement to purge it does not resolve the issue. Tar must explicitly be installed to avoid all the other failures.\n\n[Submitted PR #30|https://github.com/puppetlabs/razor-el-mk/pull/30 ]", "created": "2016-04-26T18:41:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user Thanks for the PR! I have merged it [here|https://github.com/puppetlabs/razor-el-mk/commit/6dfd2de2c9063d68d853306a844ae887b7f37b17].", "created": "2016-06-03T11:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Marked as Resolved since this only affects new builds of the microkernel.", "created": "2016-06-03T11:39:00.000000"}], "components": ["Microkernel"], "created": "2016-04-26T17:28:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c9d44dd9-5d7c-4e89-ae88-e4ed17668ccf", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6c23c65"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz5xlz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Jun/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_3960_*|*_1_*:*_1_*:*_3262101072_*|*_5_*:*_1_*:*_23901592439_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_160359"}], "description": "The razor-el-mk fails to build on centos 7 due to a failing tool chain. While running build-livecd-root I see the following error :\n\n{noformat}\ndracut module 'dmsquash-live' depends on 'img-lib', which can't be installed\ndracut module 'dmsquash-live' cannot be found or installed.\nmkinitrd failed\n{noformat}\n\nI assume this is why initrd0.img is not included in the produced iso. The livecd-iso-to-pxeboot script mounts the iso and attempts to read it. Cascading failures result in a 10kb tarball.\n\n{noformat}\n* Converting to initrd\nmount: /dev/loop1 is write-protected, mounting read-only\nThe ISO image doesn't look like a LiveCD ISO image to me.\nCleaning up to exit...\n* Unpacking initrd0.img\ngzip: tftpboot/initrd0.img.gz: No such file or directory\ncpio: premature end of archive\n* Repacking patched initrd\n1 block\n* Rebuilding tftpboot/initrd0.img\n./build-livecd-root: line 57: tftpboot/initrd0.img: No such file or directory\n* Building tarball\nmv: cannot stat \u2018tftpboot/initrd0.img\u2019: No such file or directory\nmv: cannot stat \u2018tftpboot/vmlinuz0\u2019: No such file or directory\nsha256sum: initrd0.img: No such file or directory\nsha256sum: vmlinuz0: No such file or directory\n* Done\n\n{noformat}\n\n", "environment": "CentOS 7", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10959", "fixedVersions": ["RAZOR 1.6.1"], "id": "10959", "issueType": "Bug", "key": "RAZOR-855", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c9d44dd9-5d7c-4e89-ae88-e4ed17668ccf", "resolution": "Fixed", "resolutionDate": "2016-06-03T11:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-el-mk fails to build on centos 7", "timeSpent": "PT0S", "updated": "2017-03-07T02:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:69964973-dc59-4b74-99dd-4fad2c619cad", "body": "s/trusty/xenial/g\n\nAs long as you're not doing anything too custom this will work.\nIf you have been customising the preseed.erb, you might want to consider forcing the installation of packages you rely on in postinstall using tasksel or pkgsel as xenial will not install them as trusty did (e.g. xz-utils, dmidecode, etc).\n\nIts probably a good idea to update all the supported Ubuntu tasks to make those choices explicit in the preseed, e.g.\n\ntasksel tasksel/first multiselect server, openssh-server, standard\nd-i pkgsel/include string ...\n\n", "created": "2017-04-05T04:28:00.000000"}, {"author": "557058:51224d2f-e7c3-4673-8e1e-7f6a2ab22275", "body": "Installation of 16.04 using the ubuntu- generic task fails at preseed file answering the location to install GRUB boot loader.\nManually specifying /dev/sda makes the installation process successful.", "created": "2017-04-17T14:54:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/384.\n\nI was able to get this to install using the latest `ubuntu/trusty` task, meaning this was a simple rename to add support. If the suggestions above are added as pull requests, I will include them!", "created": "2017-11-29T18:44:00.000000"}], "components": ["Server"], "created": "2016-04-22T20:33:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Perform an installation using the Ubuntu Server 16.04 Xenial ISO and the `ubuntu` (or `ubuntu/xenial`) task."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2f105ba5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hymvtb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Apr/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_4651537806_*|*_1_*:*_1_*:*_7675617795_*|*_10007_*:*_1_*:*_4073560_*|*_10009_*:*_1_*:*_3474149_*|*_5_*:*_2_*:*_1370282823_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_42951741864"}], "description": "Ubuntu [just released|https://wiki.ubuntu.com/XenialXerus/ReleaseNotes] 16.04 (Xenial Xerus). We should keep our stock tasks up-to-date by adapting the existing Trusty task to work with this new distribution.\n\n*In Scope*\n* Add a task `ubuntu/xenial.task` which inherits `ubuntu.task`.\n* Have the `ubuntu.task` task contain all files for Xenial.\n* If any changes are needed to the files in ubuntu.task, copy the existing ubuntu.task files into the legacy task(s) so the other installers will continue to work.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10917", "fixedVersions": ["RAZOR 1.7.0"], "id": "10917", "issueType": "Story", "key": "RAZOR-854", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-01-22T16:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create Ubuntu Xenial (server) task", "timeSpent": "PT0S", "updated": "2018-02-07T13:32:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d8d76b42-5326-4653-9107-efa8c6a74cb2", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user I have two suggestions which might be causing the issue. First, can you try running that {{razor-admin}} command as root? Second, can you take a look at the config.yaml file, possibly in {{/etc/puppetlabs/razor-server/config.yaml}}, to make sure there is a database password set in the {{database_url}} line?", "created": "2016-04-19T10:47:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d8d76b42-5326-4653-9107-efa8c6a74cb2", "body": "Thanks for the reply \nI am running razor-admin migrate-database command as root and i have seen my config.yaml file it is been located at \n\n/etc/razor/config.yaml file\n\nit has following code i can see username and password here still the error is showing could you  please guide attaching you my code in .yaml file\n\n# The *database_url* setting must be a connection URL for\n# (Sequel)[http://sequel.rubyforge.org/rdoc/files/doc/opening_databases_rdoc.html]\n\nproduction:\n  database_url: 'jdbc:postgresql:razor_prd?user=razor&password=redhat'\ndevelopment:\n  database_url: 'jdbc:postgresql:razor_prd'\ntest:\n  database_url: 'jdbc:postgresql:razor?user=razor&password=redhat'\nall:\n  # This section configures authentication for the Razor server.\n  # Authentication applies to access to the `/api` URL path only.\n\n\n\n\n\n\n\n", "created": "2016-04-20T01:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user Thanks for the additional information. I think what's happening is that one of the environments is incorrect. I would just modify your config.yaml file to be this:\n\n{code}\n  all: \n    database_url: 'jdbc:postgresql:razor_prd?user=razor&password=redhat'\n{code}\n\nI am assuming you created a database called \"razor_prd\" with the given username (\"razor\") and password (\"redhat\").\n\nHope that helps!", "created": "2016-04-20T03:44:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d8d76b42-5326-4653-9107-efa8c6a74cb2", "body": "OK according to your suggestion i have added the respective line in my all section and commented the lines in the enviroment\n#production:\n#  database_url: 'jdbc:postgresql:razor_prd?user=razor&password=redhat'\n#development:\n#  database_url: 'jdbc:postgresql:razor_prd'\n#test:\n#  database_url: 'jdbc:postgresql:razor?user=razor&password=redhat'\nall:\n  database_url: 'jdbc:postgresql:razor_prd?user=razor&password=redhat'\n\nwhen i used  razor-admin migrate-database\n\nIt gives error code could you please guide what is happening attaching you error code\n\nI, [2016-04-20T16:11:52.844000 #2357]  INFO -- razor.sequel: (0.001000s) SET standard_conforming_strings = ON\nI, [2016-04-20T16:11:52.853000 #2357]  INFO -- razor.sequel: (0.001000s) SET client_min_messages = 'WARNING'\nI, [2016-04-20T16:11:52.879000 #2357]  INFO -- razor.sequel: (0.024000s) SELECT version()\nI, [2016-04-20T16:11:52.899000 #2357]  INFO -- razor.sequel: (0.001000s) SELECT NULL AS \"nil\" FROM \"schema_info\" LIMIT 1\nI, [2016-04-20T16:11:52.903000 #2357]  INFO -- razor.sequel: (0.000000s) SELECT * FROM \"schema_info\" LIMIT 1\nI, [2016-04-20T16:11:52.907000 #2357]  INFO -- razor.sequel: (0.001000s) SELECT 1 AS \"one\" FROM \"schema_info\" LIMIT 1\nI, [2016-04-20T16:11:52.917000 #2357]  INFO -- razor.sequel: (0.001000s) SELECT count(*) AS \"count\" FROM \"schema_info\" LIMIT 1\nI, [2016-04-20T16:11:52.922000 #2357]  INFO -- razor.sequel: (0.001000s) SELECT \"version\" FROM \"schema_info\" LIMIT 1\nI, [2016-04-20T16:11:52.998000 #2357]  INFO -- razor.sequel: Begin applying migration version 10, direction: up\nI, [2016-04-20T16:11:53.005000 #2357]  INFO -- razor.sequel: (0.006000s) BEGIN\nE, [2016-04-20T16:11:53.046000 #2357] ERROR -- razor.sequel: Java::OrgPostgresqlUtil::PSQLException: ERROR: syntax error at or near \"DEFERRABLE\"\n  Position: 95: ALTER TABLE \"policies\" DROP CONSTRAINT \"policies_rule_number_key\", ADD UNIQUE (\"rule_number\") DEFERRABLE INITIALLY DEFERRED\nI, [2016-04-20T16:11:53.070000 #2357]  INFO -- razor.sequel: (0.005000s) ROLLBACK\nSequel::DatabaseError: Java::OrgPostgresqlUtil::PSQLException: ERROR: syntax error at or near \"DEFERRABLE\"\n  Position: 95\n                  raise_error at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/misc.rb:402\n                    statement at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/adapters/jdbc.rb:650\n                      execute at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/adapters/jdbc.rb:278\n                         hold at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/connection_pool/threaded.rb:91\n                  synchronize at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/connecting.rb:234\n                      execute at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/adapters/jdbc.rb:277\n                  execute_ddl at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/adapters/jdbc.rb:300\n            apply_alter_table at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/schema_methods.rb:394\n                         each at org/jruby/RubyArray.java:1613\n            apply_alter_table at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/schema_methods.rb:394\n  apply_alter_table_generator at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/schema_methods.rb:399\n                  alter_table at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/schema_methods.rb:79\n                       (root) at /opt/razor/db/migrate/010_policies_rule_number_unique_deferrable.rb:11\n                instance_eval at org/jruby/RubyBasicObject.java:1533\n                        apply at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/extensions/migration.rb:99\n                          run at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/extensions/migration.rb:528\n                 _transaction at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/transactions.rb:118\n                  transaction at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/transactions.rb:93\n                         hold at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/connection_pool/threaded.rb:104\n                  synchronize at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/connecting.rb:234\n                  transaction at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/database/transactions.rb:86\n          checked_transaction at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/extensions/migration.rb:463\n                          run at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/extensions/migration.rb:527\n                         each at org/jruby/RubyArray.java:1613\n                          run at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/extensions/migration.rb:523\n                          run at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/extensions/migration.rb:390\n                        apply at /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.9.0/lib/sequel/extensions/migration.rb:361\n                       (root) at /opt/razor/bin/razor-admin:41\n                         call at org/jruby/RubyProc.java:271\n                       (root) at /opt/razor/bin/razor-admin:84", "created": "2016-04-20T04:43:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user That is progress", "created": "2016-04-20T10:45:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d8d76b42-5326-4653-9107-efa8c6a74cb2", "body": "Thanks for the reply sorry i was ill could carry work i tried your steps removed PostgreSQL and installed from rpm then i tries to create database and user then i use  \npsql -l -U razor razor_prd \nit shows \npsql: FATAL:  Peer authentication failed for user \"razor\"\nbut when  I run \n razor-admin migrate-database\nit runs smoothly without any error and http://localhost:8150/api\nshows blank page \nIs it OK shall i proceed with the next steps given on doc or am i still doing any mistake.", "created": "2016-04-25T23:33:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user It sounds like it's still failing, as that /api endpoint should return some JSON. Two suggestions:\n- Try running `service razor-server start` as root to ensure the service is running before running that command again.\n- If that still yields the same result, look in /var/log/razor-server/server.log to see if there's anything suspicious in there.", "created": "2016-04-26T00:56:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d8d76b42-5326-4653-9107-efa8c6a74cb2", "body": "Razor  server is up and running i tried to run using it gives following error Error 404  i even see the server,log i dint find any error log Attaching you warn  could you guide whats is happening ,\n\n10:48:50,166 WARN  [com.arjuna.ats.arjuna] (Transaction Expired Entry Monitor) ARJUNA012210: Unable to use InetAddress.getLocalHost() to resolve address.\n10:48:50,510 WARN  [org.hornetq.journal] (MSC service thread 1-2) HQ142000: You have a native library with a different version than expected\n10:48:50,518 WARN  [org.jboss.as.messaging] (MSC service thread 1-2) JBAS011600: AIO wasn't located on this platform, it will fall back to using pure Java NIO. If your platform is Linux, install LibAIO to enable the AIO journal\n10:48:55,266 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015954: Admin console is not enabled\n", "created": "2016-04-26T04:02:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user I'm not familiar with any of these error messages. Perhaps try reinstalling razor-server? Which method did you use to install Razor initially?", "created": "2016-04-28T23:55:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "Closing due to inactivity. Please reopen if you are still having problems.", "created": "2016-07-20T16:41:00.000000"}], "components": [], "created": "2016-04-19T07:11:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d8d76b42-5326-4653-9107-efa8c6a74cb2", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@27820ce8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz5rd3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Apr/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13179855_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_7969825508"}], "description": "After running razor installation when i run the http://localhost:8150/api it shows \n\n.  Your database migrations are not current!  Without them being at the\nexact expected version you can expect all sorts of random looking failures.\n\nYou should rerun the migrations now.  That will fix things and stop this\nerror from getting in your way.  That is done with the `razor-admin` command,\nand requires full control over the database (eg: add and remove tables):\n\nwhen i run razor-admin migrate-database it gives error  like this\n\n\nSequel::DatabaseConnectionError: Java::OrgPostgresqlUtil::PSQLException: The server requested password-based authentication, but no password was provided.\n\ndon't knew much  new here please guide\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11515", "fixedVersions": ["RAZOR 1.2.0"], "id": "11515", "issueType": "Bug", "key": "RAZOR-853", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d8d76b42-5326-4653-9107-efa8c6a74cb2", "resolution": "Cannot Reproduce", "resolutionDate": "2016-07-20T16:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "when try to run razor-admin migrate-database gives error", "timeSpent": "PT0S", "updated": "2016-07-20T16:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/345.", "created": "2016-04-12T16:56:00.000000"}], "components": ["Server"], "created": "2016-04-12T16:54:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Allow the creation of a broker whose broker type contains an empty (or `---`) configuration.yaml file."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@36375c4e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hymqzr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_3034379404_*|*_1_*:*_1_*:*_120399_*|*_10007_*:*_1_*:*_11393434285_*|*_5_*:*_1_*:*_2161837495_*|*_6_*:*_1_*:*_0"}], "description": "When a broker type contains an empty configuration.yaml, an exception is thrown in the server log when it is instantiated:\n\n{code}\n14:34:15,782 INFO\u2002\u2002[razor.web.api] (http-/0.0.0.0:8151-2) NoMethodError - undefined method `keys' for false:FalseClass:\n\u2002\u2002/opt/puppetlabs/server/apps/razor-server/share/razor-server/lib/razor/data/broker.rb:28:in `validate'\n{code}\n\nA configuration.yaml file with {{---}} for contents supplies a similar exception with NilClass rather than FalseClass.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10914", "fixedVersions": ["RAZOR 1.5.0"], "id": "10914", "issueType": "Bug", "key": "RAZOR-852", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-09-26T16:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "broker-type fails with empty configuration.yaml", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2016-04-05T13:58:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@143f2790"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:t"}], "description": "We have two hook events currently related to facts:\n\n1) \"node-registered\" triggers when the node reports its hardware info or is registered via the `register-node` command.\n2) \"node-facts-changed\" triggers whenever a node's facts are modified.\n\nIt would be better to add a hook event, \"node-facts-set\", which triggers when a node's facts are set (upon check-in) for the first time.\n\n*In Scope*\n* Trigger a hook event when a node's facts change from nil to a new value.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11217", "fixedVersions": [], "id": "11217", "issueType": "Story", "key": "RAZOR-847", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add hook event for when node's facts get set for the first time", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-03-09T16:50:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@64ef3b92"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4z1b:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_20584_*|*_10007_*:*_1_*:*_685613853_*|*_10009_*:*_1_*:*_3266563_*|*_3_*:*_1_*:*_1395775_*|*_5_*:*_1_*:*_4851992634_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_66643479_*|*_10005_*:*_1_*:*_427093489"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11951", "fixedVersions": [], "id": "11951", "issueType": "Sub-task", "key": "RAZOR-843", "labels": [], "originalEstimate": "PT0S", "parent": "11205", "parentSummary": "Add matcher functions for better macaddress matching", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Fuzzy Mac matches", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] The approach to dashes vs. underscores is that the actual property name is with underscores, but when used on the CLI, dashes are preferred. Both will be accepted (they are aliases for each other), but I see why this might be confusing.\n\nDoes this match the behavior you have seen, where it accepts both `iso-url` and `iso_url`?", "created": "2016-03-09T10:42:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] sorry for the delay in response. I had meant to get back to you sooner. The reason I reported it was because \"_\" did not work. If they are aliases of one another then they should both work all the time. \n\nWhen I started learning Linux I was often told to read the man page or look at /? or --help later on. Three things always held true, I could use the flags from the docs by copy and pasting them, it thus always worked and secondly I could easily read about them all. Thirdly if I got them in the wrong order then I could safely assume I were the one to blame and I could go and carefully re-read the man page. \n\nI am thus asking for:\n* The documented flags to be correctly and consistently documented. Having aliases is not consistent and as mentioned above broken anyway.\n\nLess related to this ticket:\n\n* Complete documentation on the command line in the form of a man pages and summarized in /? or --help when I run the command. I do not want to have to access the internet to find docs\n* When I ask for help by typing --help or /? I want it all. Context based documentation only works if it is in context and not stand alone. ( razor help vs razor help nodes ). When I was learning Delphi back in the day I could always press F1 at any place in the code to get help on that function or keyword, but the help page always showed an index so I knew where it sat in relation to other items and I could choose to read on or not. ", "created": "2016-03-16T01:25:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Thank you for the feedback, [~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37]. I have updated the ticket to reflect what should be changed.\n\nWe have more tickets in place to restructure how the CLI help is discovered. If you'd like to weigh in, the design ticket is here: RAZOR-752", "created": "2016-03-16T12:02:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/67.", "created": "2016-03-16T13:14:00.000000"}], "components": ["Client"], "created": "2016-03-09T05:43:00.000000", "creator": "623a46a94a57610068e6760c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@729946e5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hynv4v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "1_*:*_1_*:*_536681128_*|*_10007_*:*_1_*:*_62727620164_*|*_5_*:*_1_*:*_3707825169_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_87288371_*|*_10005_*:*_1_*:*_4312428"}], "description": "When you run: razor help create-repo it will describe a number of parameters you can add.\nSpecifically it mentions:\niso_url and no_content.\n\nThese arguments are not allowed on the CLI since they contain underscores, but should be.\n\nRazor Server version: 1.1.0\nRazor Client version: 1.2.0\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11512", "fixedVersions": ["RAZOR 1.8.1"], "id": "11512", "issueType": "Bug", "key": "RAZOR-842", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a46a94a57610068e6760c", "resolution": "Fixed", "resolutionDate": "2018-03-12T13:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client should allow underscores in arguments", "timeSpent": "PT0S", "updated": "2018-04-24T11:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Client", "Server"], "created": "2016-03-01T19:18:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "E.g. `razor create-tag --help` yields the above output."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5cfec77f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:q"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}], "description": "A few changes need to be made, per [J.D.'s suggestions|https://puppet.atlassian.net/browse/RAZOR-756?focusedCommentId=269139&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-269139]:\n\n{code}\nNAME\ncreate-tag\nUSAGE\nrazor create-tag [name] [rule]\nDESCRIPTION\nCreates a new tag and sets the rules used to apply the tag to nodes.\n{code}\n\n- Server: Third-person singular present tense for description (and summary)\n- Client: NAME, USAGE, and DESCRIPTION for section titles\n\n*Note*: This involves removing the summary field from the CLI output.\n\n*Note*: There may be docs work if we are displaying raw CLI output anywhere. /cc [~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953]", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11510", "fixedVersions": [], "id": "11510", "issueType": "Story", "key": "RAZOR-839", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Standardize CLI help output per UX model", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Covered by RAZOR-822.", "created": "2016-02-29T13:03:00.000000"}], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e000630"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rh3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_266292463_*|*_6_*:*_2_*:*_775102987"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.2.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": "11252", "fixedVersions": [], "id": "11252", "issueType": "Sub-task", "key": "RAZOR-837", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Covered by RAZOR-821.", "created": "2016-02-29T13:02:00.000000"}], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2213fcdf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rgv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_266241334_*|*_6_*:*_2_*:*_775154858"}], "description": "  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]: 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": "11216", "fixedVersions": [], "id": "11216", "issueType": "Sub-task", "key": "RAZOR-836", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Done in RAZOR-820.", "created": "2016-03-08T22:30:00.000000"}], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5d89ecbb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rgn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_991538001_*|*_6_*:*_2_*:*_49860838"}], "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": "11032", "fixedVersions": [], "id": "11032", "issueType": "Sub-task", "key": "RAZOR-835", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4", "attachments": [], "comments": [{"author": "557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4", "body": "Packages have been pushed", "created": "2016-03-08T16:10:00.000000"}], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7b053d3e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rgf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_965738965_*|*_3_*:*_1_*:*_2997966_*|*_5_*:*_1_*:*_72664632_*|*_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": "10910", "fixedVersions": [], "id": "10910", "issueType": "Sub-task", "key": "RAZOR-834", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-08T16:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@514efc91"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rg7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_965735608_*|*_5_*:*_1_*:*_75670800_*|*_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": "10937", "fixedVersions": [], "id": "10937", "issueType": "Sub-task", "key": "RAZOR-833", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-08T15:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Covered by RAZOR-817.", "created": "2016-03-08T21:33:00.000000"}], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3051fa35"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rfz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_988074256_*|*_6_*:*_2_*:*_53331135"}], "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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11949", "fixedVersions": [], "id": "11949", "issueType": "Sub-task", "key": "RAZOR-832", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages are at http://builds.puppetlabs.lan/razor-client/1.2.0/", "created": "2016-03-07T11:01:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Testing included:\n- CentOS 7\n- CentOS 6\n- Ubuntu Trusty\n- Windows 2012R2 (client only)", "created": "2016-03-08T15:11:00.000000"}], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e154bd1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rfr:"}, {"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": "1_*:*_1_*:*_863743924_*|*_3_*:*_1_*:*_14846203_*|*_5_*:*_1_*:*_76201880_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_86618547"}], "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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11750", "fixedVersions": [], "id": "11750", "issueType": "Sub-task", "key": "RAZOR-831", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-08T15:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "-Waiting to submit SHA until release date is set.-\n\nEDIT: razor-server SHA: *c5cf78d992275314a950fab26b27d5a74e7b15b4*", "created": "2016-02-26T12:11:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://builds.puppetlabs.lan/razor-client/1.2.0/", "created": "2016-03-07T11:00:00.000000"}], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2f8fe7a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rfj:"}, {"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": "1_*:*_1_*:*_3954951_*|*_3_*:*_1_*:*_31060_*|*_5_*:*_1_*:*_177673330_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_7417303_*|*_10006_*:*_1_*:*_852336218"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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:31c596d1-7e27-4c91-bc18-1254edb3caab] 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": "11613", "fixedVersions": [], "id": "11613", "issueType": "Sub-task", "key": "RAZOR-830", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-07T11:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@61b62d3b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rfb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_741999_*|*_6_*:*_2_*:*_1040672514"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11508", "fixedVersions": [], "id": "11508", "issueType": "Sub-task", "key": "RAZOR-829", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6958201f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rf3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3890234_*|*_5_*:*_1_*:*_1037526584_*|*_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.Z', Save as \"Introduced in X.Y.Z\", 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": "11366", "fixedVersions": [], "id": "11366", "issueType": "Sub-task", "key": "RAZOR-828", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@70014b8b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rev:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_715778_*|*_6_*:*_2_*:*_1040702402"}], "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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11250", "fixedVersions": [], "id": "11250", "issueType": "Sub-task", "key": "RAZOR-827", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31f103ae"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4ren:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_702175_*|*_6_*:*_2_*:*_1040718605"}], "description": "Bump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11214", "fixedVersions": [], "id": "11214", "issueType": "Sub-task", "key": "RAZOR-826", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T11:04:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e380232"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4ref:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3856114_*|*_5_*:*_1_*:*_1037566143_*|*_6_*:*_1_*:*_0"}], "description": "Use the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11031", "fixedVersions": [], "id": "11031", "issueType": "Sub-task", "key": "RAZOR-825", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T11:04:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f8002d1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4re7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3237682_*|*_5_*:*_1_*:*_1038188266_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.2.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10908", "fixedVersions": [], "id": "10908", "issueType": "Sub-task", "key": "RAZOR-824", "labels": [], "originalEstimate": "PT0S", "parent": "10936", "parentSummary": "razor-client 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T11:04:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5161f72"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rdz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13308253_*|*_3_*:*_1_*:*_1028143464_*|*_6_*:*_1_*:*_0"}], "description": "razor-client 1.2.0 2016-03-08 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": "10936", "fixedVersions": [], "id": "10936", "issueType": "Task", "key": "RAZOR-823", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client 1.2.0 2016-03-08 Release", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c9fd63b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rdr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1041953553_*|*_6_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.2.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": "11666", "fixedVersions": [], "id": "11666", "issueType": "Sub-task", "key": "RAZOR-822", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:8db25e7a-4bdb-4fe2-af6b-f0a9bc714e12", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Sent out here: https://groups.google.com/forum/#!topic/puppet-razor/kOUZlssbx2g", "created": "2016-03-09T12:19:00.000000"}], "components": [], "created": "2016-02-26T10:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@21eafcad"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rdj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1041848828_*|*_5_*:*_1_*:*_107205_*|*_6_*:*_1_*:*_0"}], "description": "  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]: 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": "11506", "fixedVersions": [], "id": "11506", "issueType": "Sub-task", "key": "RAZOR-821", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@36687f34"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rdb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1041865152_*|*_5_*:*_1_*:*_93558_*|*_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": "11365", "fixedVersions": [], "id": "11365", "issueType": "Sub-task", "key": "RAZOR-820", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4", "attachments": [], "comments": [{"author": "557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4", "body": "Packages have been released", "created": "2016-03-08T18:58:00.000000"}], "components": [], "created": "2016-02-26T10:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2aaaf660"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rd3:"}, {"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": "1_*:*_1_*:*_966283678_*|*_3_*:*_1_*:*_13047498_*|*_5_*:*_1_*:*_62630791_*|*_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": "11248", "fixedVersions": [], "id": "11248", "issueType": "Sub-task", "key": "RAZOR-819", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-08T18:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@508db2e9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rcv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_966273445_*|*_5_*:*_1_*:*_75691703_*|*_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": "11213", "fixedVersions": [], "id": "11213", "issueType": "Sub-task", "key": "RAZOR-818", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-08T15:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Attended by:\n- Steve Axthelm\n- Moses Mendoza\n- Melissa Stone\n- Ryan McKern\n- Scott McClellan\n- David Lutterkort", "created": "2016-03-08T21:32:00.000000"}], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@557cea12"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rcn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_988565073_*|*_5_*:*_1_*:*_53399718_*|*_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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11030", "fixedVersions": [], "id": "11030", "issueType": "Sub-task", "key": "RAZOR-817", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://builds.puppetlabs.lan/razor-server/1.2.0/", "created": "2016-03-08T10:19:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Testing included:\n- CentOS 7\n- CentOS 6\n- Ubuntu Trusty\n- Windows 2012R2 (client only)", "created": "2016-03-08T15:11:00.000000"}], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@78e68eb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rcf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_948221209_*|*_3_*:*_1_*:*_14810184_*|*_5_*:*_1_*:*_76239707_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2696787"}], "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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "10907", "fixedVersions": [], "id": "10907", "issueType": "Sub-task", "key": "RAZOR-816", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-08T15:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "-razor-server SHA: be9900cdef23bcb62e1bc334d125ecc5f14c8690-\n\n-EDIT: Waiting to submit SHA until date is set.-\n\nrazor-server SHA: *dd7ee6cf362060bd6ac6050790f513e5a3b479c2*", "created": "2016-02-26T11:53:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://builds.puppetlabs.lan/razor-server/1.2.0/", "created": "2016-03-08T10:18:00.000000"}], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7a47b3f2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rc7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3433245_*|*_3_*:*_1_*:*_83879703_*|*_5_*:*_1_*:*_93824865_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_7438613_*|*_10006_*:*_2_*:*_853392328"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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:31c596d1-7e27-4c91-bc18-1254edb3caab] 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": "10935", "fixedVersions": [], "id": "10935", "issueType": "Sub-task", "key": "RAZOR-815", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-08T10:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@793562ba"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rbz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1036006_*|*_6_*:*_2_*:*_1040937005"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11948", "fixedVersions": [], "id": "11948", "issueType": "Sub-task", "key": "RAZOR-814", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7e4fa7c1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rbr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3384911_*|*_5_*:*_1_*:*_1038590189_*|*_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.Z', Save as \"Introduced in X.Y.Z\", 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": "11747", "fixedVersions": [], "id": "11747", "issueType": "Sub-task", "key": "RAZOR-813", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3759b8d0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rbj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1190898_*|*_6_*:*_2_*:*_1040786857"}], "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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11664", "fixedVersions": [], "id": "11664", "issueType": "Sub-task", "key": "RAZOR-812", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31f1cecb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rbb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1218822_*|*_6_*:*_2_*:*_1040760604"}], "description": "Bump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11503", "fixedVersions": [], "id": "11503", "issueType": "Sub-task", "key": "RAZOR-811", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3420462e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rb3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2934069_*|*_5_*:*_1_*:*_1039050286_*|*_6_*:*_1_*:*_0"}], "description": "Use the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11364", "fixedVersions": [], "id": "11364", "issueType": "Sub-task", "key": "RAZOR-810", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-02-26T11:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7fb34b81"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4rav:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2261127_*|*_5_*:*_1_*:*_1039696041_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_28455"}], "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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.2.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11246", "fixedVersions": [], "id": "11246", "issueType": "Sub-task", "key": "RAZOR-809", "labels": [], "originalEstimate": "PT0S", "parent": "11212", "parentSummary": "razor-server 1.2.0 2016-03-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "NOTE: Since Debian Squeeze is EOL, we will not be shipping a version of that for razor-server.", "created": "2016-03-08T14:29:00.000000"}], "components": [], "created": "2016-02-26T10:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@12e31b6c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4ran:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13877090_*|*_3_*:*_1_*:*_1028160039_*|*_6_*:*_1_*:*_0"}], "description": "razor-server 1.2.0 2016-03-08 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": "11212", "fixedVersions": [], "id": "11212", "issueType": "Task", "key": "RAZOR-808", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-03-09T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-server 1.2.0 2016-03-08 Release", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": ["Client", "Server"], "created": "2016-02-24T15:04:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@58d423e8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyo2wv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_69438_*|*_3_*:*_1_*:*_21565433_*|*_5_*:*_1_*:*_7071124197_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_159228290"}], "description": "Issue to track release 1.2.0 for Razor.\n\n*In Scope*\n* Create release tickets for RE \n* Create news file & tidy up for release \n* Settle on release date", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11362", "fixedVersions": [], "id": "11362", "issueType": "Task", "key": "RAZOR-805", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-02-26T17:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Initiate Razor FOSS release 1.2.0", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "hey [~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953] - has this been addressed or is it potentially no longer an issue?", "created": "2016-04-18T12:09:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "This is primarily a dev ticket, so adding to NM backlog for triage.", "created": "2016-04-18T12:30:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Not a high enough priority to pursue at this point.", "created": "2019-12-02T20:32:00.000000"}], "components": ["Client", "DOCS", "Server"], "created": "2016-02-19T18:48:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "`razor policies` should show `required_tags` as a column name rather than `tags`. `create-tag` should allow supplying \"required-tags\" and/or \"required-tag\" rather than \"tags\"."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@728cce"}, {"fieldName": "CS Impact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "Normal to match PE-13103. Would prefer to see this be done first if we had to choose."}, {"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": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Master Config", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Split"}, {"fieldName": "Master OS", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "RHEL 6 (x86_64)"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:8ee7ce10-5b29-49dc-ad32-53903d0d886c"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:p"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Apr/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5071347950_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_54194704151_*|*_10005_*:*_1_*:*_60144938844"}], "description": "It is potentially misleading to have the policy state tags: (none). Currently it means that no tags are required by the policy for the node to match. It could cause confusion, as the policy's tags are `required` and not `applied`.\n\nRequest:\n\nRename the {{tags}} property of policies to be {{required_tags}}.\n\n*In Scope*\n* Update the API to rename \"tags\" as \"required_tags\".\n* Add an alias of {{tags}} for {{required_tags}} to accommodate backwards compatibility.\n* Update the client display of policies to show the property.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11745", "fixedVersions": [], "id": "11745", "issueType": "Story", "key": "RAZOR-803", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2019-12-02T20:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Rename \"tags\" on policy to \"required_tags\"", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by\u00a0https://github.com/puppetlabs/razor-server/pull/400.", "created": "2018-04-02T10:24:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "PR #400 merged to razor-server#master at https://github.com/puppetlabs/razor-server/commit/4efc533e753b9960b0b424f305a9ffec37c87aa7.", "created": "2018-04-10T14:50:00.000000"}], "components": [], "created": "2016-02-19T17:49:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "`razor tasks` on a vanilla install no longer includes ubuntu/lucid."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e04958d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hynv7b:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Apr/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6186_*|*_10007_*:*_1_*:*_707303125_*|*_5_*:*_1_*:*_1197584856_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_63315319886_*|*_10005_*:*_1_*:*_3441514934"}], "description": "Ubuntu Lucid [has reached|https://wiki.ubuntu.com/Releases#End_of_life] End of Life and should be removed from our stock offering.\n\n*In Scope*\n* Delete the ubuntu/lucid stock task.\n\n*Note*\nThis should be broadcast in the NEWS.md as a task change, in case any users are utilizing this task.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11501", "fixedVersions": ["RAZOR 1.8.1"], "id": "11501", "issueType": "Story", "key": "RAZOR-800", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-04-10T14:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Remove Ubuntu Lucid from stock tasks", "timeSpent": "PT0S", "updated": "2018-04-24T11:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2016-02-19T17:43:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Install a vanilla Debian \"jessie\" OS using the ISO in the description and the task \"debian\" and also from \"debian/jessie\"."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@590f612f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:o"}], "description": "The latest LTS version of Debian has been [released recently|https://www.debian.org/releases/jessie/]. Razor should keep on top of that by creating a stock task for that OS version.\n\nThe standard for our stock tasks is that the generic installer points to the latest version of that distributor, and sub-versions are created under that. For example:\n|| Task || OS ||\n| windows | Windows 8 Professional |\n| windows/8pro | Windows 8 Professional |\n| windows/2008r2 | Windows 2008 R2 |\n| windows/2012r2 | Windows 2012 R2 |\n| ubuntu | Ubuntu Trusty |\n| ubuntu/trusty | Ubuntu Trusty |\n| ubuntu/precise | Ubuntu Precise |\n\nFor this reason, \"debian\" should point to \"jessie\" now, the existing \"debian\" task should be \"debian/wheezy\", and the new task should be linked as \"debian/jessie\".\n\n*In Scope*\n* Move the existing \"debian\" installer to be \"debian/wheezy\", which should inherit from \"debian\" and only include files which differ from that.\n* Create a new \"debian\" task which works with the DVD ISO below.\n* Create a stub task called \"debian/jessie\" which points to (inherits from) the modified \"debian\" task.\n* Do the same for \"stretch\" and perhaps \"buster\" if available at time of release.\n\n*Resources*\n* [Info on installing|http://cdimage.debian.org/debian-cd/8.3.0/amd64/iso-dvd/]\n* [Link to actual ISO|http://cdimage.debian.org/debian-cd/8.3.0/amd64/iso-dvd/debian-8.3.0-amd64-DVD-1.iso] (only need DVD-1)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11361", "fixedVersions": [], "id": "11361", "issueType": "Story", "key": "RAZOR-799", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add task for Debian \"jessie\", \"stretch\"", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Ready for review:\nhttps://github.com/puppetlabs/pe-docs-private/commit/81c0d9553267858fa78139c3b54884e52204f823", "created": "2016-02-19T14:17:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Looks good.", "created": "2016-02-19T15:06:00.000000"}], "components": ["Client"], "created": "2016-02-19T14:06:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7ff86973"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4mw7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_34655_*|*_10007_*:*_1_*:*_262318_*|*_10009_*:*_1_*:*_2895537_*|*_5_*:*_1_*:*_7683624121_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_674284"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11743", "fixedVersions": [], "id": "11743", "issueType": "Sub-task", "key": "RAZOR-798", "labels": [], "originalEstimate": "PT0S", "parent": "11307", "parentSummary": "Report razor-client version even if razor-server is unreachable", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "RNs - razor-client version", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Review please and thank you!\nhttps://github.com/puppetlabs/pe-docs-private/commit/ecb448da5dc26fc7784efe15067cc521f7fb8462", "created": "2016-02-12T12:09:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Reviewed.", "created": "2016-02-12T18:26:00.000000"}, {"author": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "body": "Not exactly related to this change, but since this is a doc specifically for PE, this line should be changed: https://github.com/puppetlabs/pe-docs-private/commit/ecb448da5dc26fc7784efe15067cc521f7fb8462#diff-3bd3548f25565532daf77461eb30d20bR61\n\nto be pe-razor: instead of razor:", "created": "2016-02-22T23:47:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0] This ^^ is fixed in all versions back to 3.8. Thanks!", "created": "2016-02-24T10:21:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-02-10T15:03:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31a2ee65"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz4ddr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Feb/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14261_*|*_3_*:*_1_*:*_23851_*|*_10009_*:*_1_*:*_22623933_*|*_5_*:*_1_*:*_7966908560_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_309755208_*|*_10005_*:*_1_*:*_162306659"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11360", "fixedVersions": [], "id": "11360", "issueType": "Sub-task", "key": "RAZOR-795", "labels": [], "originalEstimate": "PT0S", "parent": "11944", "parentSummary": "Allow unsigned drivers as argument to build-razor-winpe.ps1 script", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Done", "resolutionDate": "2016-05-18T14:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Unsigned drivers in build-razor-winpe.ps1", "timeSpent": "PT0S", "updated": "2016-05-18T14:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2016-02-09T15:50:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Node Management"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@18c5a8"}, {"fieldName": "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 Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-8"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Razor minus Torquebox"}, {"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": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "dark_purple"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz4clb:"}], "description": "Epic to track issues relating to migrating Razor off of torquebox.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11241", "fixedVersions": [], "id": "11241", "issueType": "Epic", "key": "RAZOR-794", "labels": ["eng-architecture"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "status": "Defining", "statusCategory": "In Progress", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Migrate Razor off Torquebox", "timeSpent": "PT0S", "updated": "2020-01-13T12:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Increased priority to \"Major\" since without this, adding tasks to Razor's database will be irreversible.", "created": "2018-03-13T18:31:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-02-03T16:33:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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 task via `razor create-task`. Successfully delete the task using `razor delete-task`.\nCreate task via `razor create-task`. Use the task in a repo and/or policy. Fail to delete the task using `razor delete-task` without supplying `force`.\nCreate task via `razor create-task`. Use the task in a repo and/or policy. Successfully delete the task using `razor delete-task` supplying the `force` argument."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f03efaa"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:n"}], "description": "If a user creates a task through the API (rather than on disk), there is currently no way to get rid of it. There should be a new command `delete-task` to remove this task from the database.\n\n*Use Case*\n* A user creates a task through the API and wishes to delete it to modify one of its templates.\n\n*In Scope*\n* Add a command to delete a task. Attributes:\n** `name`: The name of the task (positional argument 0)\n** `force`: Whether to delete the task even though it's used by policies/repos\n* Command should return a 400 if the task is on disk\n* Command should check if task is used by any repos or policies\n* Command should fail if `force` is not supplied and task is used by repos/policies\n* Document that this command could cause provisioning issues if it is in use by a policy/repo", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10905", "fixedVersions": [], "id": "10905", "issueType": "Story", "key": "RAZOR-792", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add `delete-task` command for tasks created through `create-task`", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-01-29T03:53:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3b47dc8c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:l"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}], "description": "One potential frustration for users is the limbo period while a repo is being downloaded. Currently, any installs will fail if the repo is not ready yet. Better behavior would be to defer installation, either via a sleep script (like the microkernel waits for a policy to bind) or a simple reboot.\n\n*In Scope*\n* Defer installation of nodes if the repo was created via `iso-url` and has not been successfully created\n* Render delay ipxe script for nodes to call /svc/boot again later\n* Add config `repo_not_ready_retry_timeout` (name debatable) with default of 30 seconds\n* Call /svc/boot again with same arguments after config timeout/sleep expires\n\n*Out of Scope*\n* Add `status` field to repo, with values (`pending`, `downloading`, `extracting`, `finished`, and `errored`) \\[RAZOR-787\\]\n* Update repo status when created, download starts, extract starts, and extract/move finishes. \\[RAZOR-787\\]\n\n*Hint*\n* Add a stock \"delay\" template to render instead of `template = @task.boot_template(@node)` (app.rb:374) if the repo's status != `finished`.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11238", "fixedVersions": [], "id": "11238", "issueType": "Bug", "key": "RAZOR-788", "labels": ["usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Defer installation when repo is not ready", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Client", "Server"], "created": "2016-01-29T03:51:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Run the `create-repo` command with the `iso-url` argument. `razor repos` shows `downloading` until install completes, `extracting` while it is extracting (to test, try large zip file available locally using `file://` protocol), then `finished` when it is done.\nRun the `create-repo` command with an invalid `iso-url` argument. `razor repos` shows `transient-error` until it fails too many times, at which point the `razor repos` status changes to `errored`."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5391a865"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:k"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}], "description": "When a repo is created, it is either fully formed (`\\--no-content` or `\\--url`) or requires asynchronous work to be usable. In the latter case, this status is currently tracked in a command, which is an unnecessary layer of indirection.\n\nBetter than linking the repo to its create-repo command in order to determine the download/extract status, the repo itself should hold the status so that installation can act on this state. \n\n*Use Case*\n* A user creates a repo using `iso-url`.\n* While the ISO file is downloading, the user views the `razor repos` collection.\n* The `razor repos` collection contains no information on its status, even though it is not ready yet.\n\n*In Scope*\n* Add `create_command` field to repo.\n* Link respective `create-repo` command to repo.\n* Update `create-repo` command to say that the repo will be downloaded asynchronously when it will (`iso-url` supplied)\n* Add `repo.create_command.status` to repo view in view.rb.\n* Update command status values to the more descriptive `pending`, `downloading`, `extracting`, `finished`, `error-retry`, and `failed` statuses (currently `pending`, `running`, `finished`, `failed`).\n* Update command status when created, download starts, extract starts, and extract/move finishes.\n* Use status `transient-error` if there is an error which will be retried (e.g. 404).\n* Use status `errored` when the error is fatal/retried for the last time.\n* Client: Show the repo's status in `razor repos` via views.yaml.\n\n*Optional*\n* Include the progress of the download (percent complete?)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11210", "fixedVersions": [], "id": "11210", "issueType": "Story", "key": "RAZOR-787", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add status to repo", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This should be a release note only, as it's a bug fix. That is, unless this is being coupled with a larger explanation of how to use a `protect_new_nodes` workflow in a Razor deployment.", "created": "2016-02-02T23:09:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Ready for review:\nhttps://github.com/puppetlabs/pe-docs-private/commit/428dc420c678031bf2e77bf0893abfaca62e4ed4\n\ncc: [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]", "created": "2016-02-03T12:47:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-01-27T15:18:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@62f04975"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz45tb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_620647_*|*_10009_*:*_1_*:*_597695720_*|*_5_*:*_1_*:*_2424788054_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_594784935_*|*_10005_*:*_1_*:*_334339"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11028", "fixedVersions": ["RAZOR 1.2.0"], "id": "11028", "issueType": "Sub-task", "key": "RAZOR-786", "labels": [], "originalEstimate": "PT0S", "parent": "11946", "parentSummary": "Protected nodes should match tags on checkin", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Fixed", "resolutionDate": "2016-02-10T10:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "RNs - Protect new nodes", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "body": "This would be a great new feature as we're currently assigning blocks of mac addresses to be used for different operating systems. One range for Windows, one range for RHEL, and another for ESXi. Having a fuzzy matcher would greatly simplify being able to do this (y)", "created": "2017-09-26T15:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/379.", "created": "2017-09-26T17:56:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-01-20T15:34:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Given a machine with multiple interfaces and macaddresses reported by `facter`, the fact [\"has_macaddress_like\", \"some-regex\"] should match if \"some-regex\" is a regex match for some reported macaddress."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3aab2c74"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyomq7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Sep/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_11324478050_*|*_1_*:*_1_*:*_3584424_*|*_10007_*:*_1_*:*_240880711_*|*_5_*:*_1_*:*_32765_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_51933471237_*|*_10005_*:*_1_*:*_1203843940"}], "description": "Macaddresses are [not deterministically reported|https://puppet.atlassian.net/browse/RAZOR-732?focusedCommentId=238409&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-238409] to Razor from the OS. Facts like {{\\[\"in\", \\[\"fact\", \"macaddress\"], \"00:50:56:a0:bd:24\"]}} may not match correctly, depending on the order in which interfaces are reported.\n\nA {{\"has_macaddress_like\"}} function should allow a list of regular expression inputs which will be checked against facts with the {{macaddress}} prefix. This is a combination of {{\\[\"fact\", \"macaddress\"]}} and {{\\[\"like\", ...]}}.\n\n*In Scope*\n- Add a {{\"has_macaddress_like\"}} matcher function, as described above.\n\n*Notes*\n* Assumes implementation already complete in RAZOR-780", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11208", "fixedVersions": ["RAZOR 1.7.0"], "id": "11208", "issueType": "Story", "key": "RAZOR-783", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-02-07T13:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add matcher functions for fuzzy macaddress matching", "timeSpent": "PT0S", "updated": "2018-02-07T13:32:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This functionality is included in RAZOR-1110.", "created": "2019-07-09T17:46:00.000000"}], "components": ["Server"], "created": "2016-01-20T15:29:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5134fc3d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyomqf:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_21788_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_2358_*|*_10006_*:*_1_*:*_108178850275_*|*_10005_*:*_1_*:*_1208144622"}], "description": "The matcher currently throws errors when a \"fact\" or \"metadata\" expression evaluates to an array.\n\n*In Scope*\n* Fix the matcher language so returned values (e.g. of an array) are not re-evaluated (as an error)\n\n*Notes*\n* This means adding the capability for a function to return a datatype of Array or Hash.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11102", "fixedVersions": [], "id": "11102", "issueType": "Bug", "key": "RAZOR-782", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Duplicate", "resolutionDate": "2019-07-09T17:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag matcher should not re-evaluate hash or array return types", "timeSpent": "PT0S", "updated": "2019-07-09T17:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I've decreased the priority of this to \"Minor\" since it would only be useful for detecting the new fact_boot_type value in hw_info. Other values should be available via facts, and it's preferred to query them there.", "created": "2018-03-09T19:49:00.000000"}], "components": [], "created": "2016-01-14T21:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Given a node's properties in `razor nodes node# hw_info`, allow a tag to match this node via a tag like `[\"in\", [\"hw_info\", \"mac\"], \"08-00-27-8a-b7-ad\"]`."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b706264"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:j"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}], "description": "Right now, the only queryable node attributes are facts ({{\"fact\"}} matcher) and metadata ({{\"metadata\"}} matcher). In some cases, the \"hw_info\" attribute might be desirable, so we should expose a {{\"hw_info\"}} matcher. \n\n*In Scope*\n- Add a matcher {{\"hw_info\"}} which works like the {{\"fact\"}} matcher function except use values in {{razor nodes node# hw_info}}.\n- Document in FOSS this new matcher function.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11359", "fixedVersions": [], "id": "11359", "issueType": "Story", "key": "RAZOR-781", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow matcher to reference \"hw_info\"", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/343.", "created": "2016-03-14T10:31:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-01-14T21:11:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Given a machine with multiple interfaces and macaddresses reported by `facter`, the fact [\"has_macaddress\", \"some-mac\"] should match if \"some-mac\" is the macaddress in a fact matching the regular expression /macaddress.*/."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@64546f6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hynkfr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "19/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_505418251_*|*_1_*:*_1_*:*_1543650_*|*_10007_*:*_1_*:*_104533957_*|*_3_*:*_1_*:*_303126310_*|*_5_*:*_1_*:*_4842279635_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_178108249_*|*_10004_*:*_1_*:*_84775456_*|*_10006_*:*_1_*:*_3133799829_*|*_10005_*:*_2_*:*_1618808718"}], "description": "Macaddresses are [not deterministically reported|https://puppet.atlassian.net/browse/RAZOR-732?focusedCommentId=238409&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-238409] to Razor from the OS. Facts like {{\\[\"in\", \\[\"fact\", \"macaddress\"], \"00:50:56:a0:bd:24\"]}} may not match correctly, depending on the order in which interfaces are reported.\n\nThe better approach here is to add a {{\"has_macaddress\"}} function which will search all facts with the {{macaddress}} prefix. The function should have an unbounded arity, meaning you can supply as many macaddresses as desired: {{\\[\"has_macaddress\", \"mac1\", \"mac2\", ...]}}\n\n*In Scope*\n- Add a {{\"has_macaddress\"}} matcher function, as described above.\n- Document in FOSS docs that {{\\[\"fact\", \"macaddress\"]}} should be avoided.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11205", "fixedVersions": ["RAZOR 1.3.0"], "id": "11205", "issueType": "Story", "key": "RAZOR-780", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add matcher functions for better macaddress matching", "timeSpent": "PT0S", "updated": "2016-05-18T14:31:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 515a024.", "created": "2016-02-09T12:49:00.000000"}], "components": ["DOCS", "Server"], "created": "2016-01-14T18:58:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Set `protect_new_nodes` to `true`. Add a tag. Boot a node which should match the tag. After the node reports its facts in the microkernel and reboots, `razor nodes` should show the tag matched to the node."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4416ecbd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hynpiv:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_797089_*|*_1_*:*_1_*:*_10581_*|*_10007_*:*_1_*:*_9813497_*|*_3_*:*_1_*:*_581259897_*|*_5_*:*_1_*:*_2411328875_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_92317549_*|*_10006_*:*_1_*:*_1129144342_*|*_10005_*:*_1_*:*_503554125"}], "description": "When utilizing the [`protect_new_nodes`|https://docs.puppetlabs.com/pe/latest/razor_brownfield.html#protect-new-nodes] workflow, nodes are currently not being matched to tags when they boot into the microkernel. This is problematic if you want to issue `reinstall-node` later and know to which policy the node might bind.\n\n*In Scope*\n- Match but do not bind nodes that check in and `protect_new_nodes` is enabled\n- Add tests for this scenario\n\n*Hint*\nThe problematic piece of code is {{match_and_bind unless (installed or policy)}} in {{razor-server/lib/razor/data/node.rb:341}}, which should be split up:\n{code}\nmatch # No matter what\nbind unless (installed or policy)\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11946", "fixedVersions": ["RAZOR 1.2.0"], "id": "11946", "issueType": "Story", "key": "RAZOR-779", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-02-10T14:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Protected nodes should match tags on checkin", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2016-01-14T16:14:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Allow the user to supply `base` and `description` in the `create-task` command, both of which will show up in `razor tasks`."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6129a99b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:i"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}], "description": "Two fields used for a new task, {{base}} and {{description}}, are not included in the command. The {{base}} property in particular means that a database task (created via the {{create-task}} command) cannot inherit another task.\n\nNote that deletion of a database-backed task that is the base of another task should fail.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11358", "fixedVersions": [], "id": "11358", "issueType": "Story", "key": "RAZOR-778", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add `description` and `base` to create-task command", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2016-01-14T10:31:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Modify the standalone.xml file to change the http port, and config.yaml file to turn `auth` on. Issue `service razor-server reload`. See the HTTP listening port change and the auth become enabled."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5e09345f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hyk3xv:h"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}], "description": "In order to modify configuration in Razor, the service needs an expensive service restart. This is unacceptable for larger deployments since Razor is a critical element of the infrastructure.\n\nTo decrease the amount of time it takes to modify the server configuration (config.yaml and/or standalone.xml, for example), `service razor-server reload` should be supported.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11162", "fixedVersions": [], "id": "11162", "issueType": "Story", "key": "RAZOR-777", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support `reload` in razor-server service", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Hi [~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0] - I think we already have a ticket that would help this out, RAZOR-422. I'm linking as a duplicate. Let me know if that doesn't seem right. ", "created": "2016-01-20T16:47:00.000000"}], "components": [], "created": "2016-01-07T14:46:00.000000", "creator": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@24d3799c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymqz3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1130470739_*|*_6_*:*_1_*:*_0"}], "description": "If you run a create-repo command such as:\ncreate-repo --name puppet-test-repo --iso-url \"file:///tmp/blank.iso\" --task centos\nbut the file location /tmp/blank.iso does not exist, the command completes successfully, and razor repos returns the repo with no indication that the creation was unsuccessful or still in progress.\n\nIn the logs, you see this message:\nINFO  [razor.messaging.sequel] (Thread-55 (HornetQ-client-global-threads-231563174)) retry message ID:821fa2da-b584-11e5-99b5-bfaffbb3263e after 337.62: unable to read local file /tmp/blank.iso\n\nAnd if you execute:\nrazor commands | grep create-repo\nyou get the result:\n| 1    | create-repo | puppet-test-repo | 16     | running  |\n\nIt would be good to surface any errors at the time that create-repo is executed (or maybe treat them like warnings while we still retry in the background) and also surface this info that the command has not completed and possibly a reason why when you execute the razor repos command.\n\nAdditionally, in a case like this where a file or directory does not exist, we might want to consider this an error immediately rather than retrying a bunch of times before failing?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11100", "fixedVersions": [], "id": "11100", "issueType": "Bug", "key": "RAZOR-773", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "resolution": "Duplicate", "resolutionDate": "2016-01-20T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "create-repo command does not give any feedback if it is unsuccessful.", "timeSpent": "PT0S", "updated": "2016-10-06T13:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["DOCS"], "created": "2016-01-04T15:33:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e2e1ce8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3qrz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_269399_*|*_3_*:*_1_*:*_264601625_*|*_5_*:*_1_*:*_11061745567_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_251754082_*|*_10005_*:*_1_*:*_78290812"}], "description": "Document that Ruby >= 1.8.7 is now allowed for installation of pe-razor-client.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11161", "fixedVersions": ["RAZOR 1.1.0"], "id": "11161", "issueType": "Sub-task", "key": "RAZOR-771", "labels": [], "originalEstimate": "PT0S", "parent": "11880", "parentSummary": "Restore support for Ruby < 1.9.3 for razor-client", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - razor-client Ruby support", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] I'm a bit puzzled by the description in this ticket where it says \"razor-server 1.0.1-1puppet1\" for the version. Can you describe the steps you took to install Razor?", "created": "2015-12-23T15:32:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I used the repository for trusty found here: http://apt.puppetlabs.com/ \nhttp://apt.puppetlabs.com/puppetlabs-release-trusty.deb\n\nI installed the repository and then did apt-get update and apt-get install razor-server", "created": "2015-12-23T16:07:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] thanks for reporting this. It appears the apt repository isn't returning the latest razor server package. \n\nThe latest version per the repo metadata is 1.0.1 (http://apt.puppetlabs.com/dists/trusty/main/binary-i386/Packages) when it should be 1.1.0-1. Sorry for the confusion.\n\nPing [~accountid:63d40635a05386069cdb69d6] - can you take a look and see if repo metadata needs updated? ", "created": "2016-01-04T11:41:00.000000"}, {"author": "557058:f79f8af3-d468-4e76-b115-311ddf4eb9a4", "body": "Packages have been resynced and metadata has been refreshed. [~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] can you please confirm that you're able to install razor-server 1.1.0-1 now?", "created": "2016-01-05T15:29:00.000000"}, {"author": "63d40635a05386069cdb69d6", "body": "I'm going to close since there's been no activity in 5 days, and we're pretty sure this is fixed. If it's not, please  reopen. ", "created": "2016-01-11T12:16:00.000000"}, {"author": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "body": "I am encountering this issue with server 1.9.2 on CentOS 7\n\nThe issue appears to be with these two lines in /opt/puppetlabs/server/apps/razor-server/share/torquebox/jboss/standalone/configuration/standalone.xml:\n\n\n{code:java}\n        <socket-binding name='http' port='${http.port:8080}'/>                                                                                                                                                                                               \n        <socket-binding name='https' port='8443'/>                                                                                                                                                                                                           \n{code}\n\nThe first line", "created": "2018-08-08T06:07:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I will reproduce this.", "created": "2018-08-21T15:11:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by\u00a0[https://github.com/puppetlabs/razor-vanagon/pull/50].", "created": "2019-06-26T12:27:00.000000"}], "components": ["Server"], "created": "2015-12-23T04:18:00.000000", "creator": "623a46a94a57610068e6760c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@611f6f90"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynskf:"}, {"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": "Packages are missing, and this is important"}, {"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": "23/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_81747153_*|*_1_*:*_1_*:*_40458092_*|*_10007_*:*_1_*:*_3063886800_*|*_3_*:*_1_*:*_53527915_*|*_4_*:*_1_*:*_1155770210_*|*_5_*:*_2_*:*_13472781878_*|*_6_*:*_2_*:*_70126627668_*|*_10004_*:*_3_*:*_28264049349"}], "description": "On Ubuntu 14.04 using the puppetlabs-release-trusty.deb package to provide repository access I installed razor-server.\n||/ Name                                                           Version                              Architecture                         Description\n+++-==============================================================-====================================-====================================-=================================================================================================================================\nii  razor-server                                                   1.0.1-1puppet1                       all                                  Razor is an advanced provisioning application\n\nThe above provided by dpkg-query -l razor-server.\n\nI then created a database, migrated it and installed the razor client using gem install razor-cliient\n\ngem -v razor-client\n1.8.23\n\nrazor nodes\nError: Could not connect to the server at http://localhost:8150/api\n       Connection refused - connect(2)\n\nGives an error.\n\nIt turns out that for some reason the razor-server has reverted back to 8080 rather than 8150. I get a result back:\nrazor -u http://localhost:8080/api nodes\nFrom http://localhost:8080/api/collections/nodes:\n\nThere are no items for this query.\n\nRather than a error.\n\nI have done two clean installations of Ubuntu 14.04 and both behaved in the exact same way so I am confident that it is not something silly that I have done. I also don't have anything that is listening on port 8150 prior to the install.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11499", "fixedVersions": ["razor-server 1.9.6"], "id": "11499", "issueType": "Bug", "key": "RAZOR-768", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a46a94a57610068e6760c", "resolution": "Fixed", "resolutionDate": "2019-08-01T22:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor server port and razor client port does not match", "timeSpent": "PT0S", "updated": "2019-08-29T19:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] so is this ticket essentially tracking work to discern the locale from the user's environment and then set that as some state known to razor client (e.g., such as can be consumed by fast_gettext as described in RAZOR-653)?", "created": "2016-01-19T14:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Yes", "created": "2016-01-19T14:43:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] hrm I'm confused. I thought RAZOR-653 was also about the client, not the server? \n\nFrom the _in scope_:\n{quote}\n* Add fast_gettext to the list of dependencies for razor-client\n* Wrap human-readable error messages generated on the client in calls to fast_gettext\n{quote}\n\nSidenote, the work in RAZOR-652 is to have the client set the Accept-Language Header, so I've set that as blocked by this ticket (on the assumption that we can't set it until we detect it, as described in \"In Scope\" for this ticket). does that seem right? ", "created": "2016-01-19T14:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Good call on clarifying all these translation-oriented tickets. Here's the breakdown as I see it:\n\nRAZOR-652 is for telling the Razor server which language it should use to translate server-generated error messages.\nRAZOR-653 is for passing client-generated error messages through {{fast_gettext}} so they can be translated later.\nRAZOR-767 is for deciding which language to use for outputting client-generated, translated error messages.\n\nAll three of these tickets are to augment the client's ability to translate messages. RAZOR-651 is the only server-side ticket related to translation.\n\nEDIT: I think the `blocks` relationship is fine as-is between RAZOR-652 and RAZOR-767.", "created": "2016-01-19T15:16:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] thank you! ", "created": "2016-01-19T16:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/71.", "created": "2017-01-04T19:33:00.000000"}], "components": ["Client"], "created": "2015-12-22T18:50:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@12ccdaf8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynvbr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_54294034_*|*_10007_*:*_1_*:*_1871092681_*|*_5_*:*_1_*:*_3647424114_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_2382971_*|*_10006_*:*_1_*:*_30255638846_*|*_10005_*:*_2_*:*_2435834591"}], "description": "The Razor server already uses {{fast_gettext}} to wrap error messages produced so they can be translated to a proper language for the client. Some error messages the user sees in the client are generated directly by the client. For that reason, the same {{fast_gettext}} implementation should be used in the client.\n\n*In Scope*\n* Read the locale in the user's environment to determine how to translate the error messages.\n\nThis ticket will be resolved when RAZOR-858 is complete.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10930", "fixedVersions": ["RAZOR 1.6.1"], "id": "10930", "issueType": "Task", "key": "RAZOR-767", "labels": ["i18n", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor Client should read locale from user's environment", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-12-22T18:21:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Node Management"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4ca85e41"}, {"fieldName": "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 Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-4"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Razor Windows Improvements"}, {"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": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "dark_blue"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3oan:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6295_*|*_6_*:*_1_*:*_0_*|*_10013_*:*_1_*:*_7917952625"}], "description": "Epic to track issues related to improving the Razor experience on Windows.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11945", "fixedVersions": [], "id": "11945", "issueType": "Epic", "key": "RAZOR-766", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2016-03-23T10:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor Windows Improvements", "timeSpent": "PT0S", "updated": "2016-06-02T05:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-12-22T16:45:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "customFieldValues": [{"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Node Management"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3dc57067"}, {"fieldName": "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 Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-8"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Razor Post-GA Platform Additions"}, {"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": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "dark_purple"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3oa7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2913994_*|*_6_*:*_1_*:*_0_*|*_10013_*:*_1_*:*_71856804207"}], "description": "epic to track addition of tasks to Razor post-GA ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11443", "fixedVersions": [], "id": "11443", "issueType": "Epic", "key": "RAZOR-765", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Done", "resolutionDate": "2018-04-02T10:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor Post-GA Platform (Task) Additions", "timeSpent": "PT0S", "updated": "2018-04-02T10:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Increasing priority as the workaround for this could be painful.", "created": "2016-03-14T17:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit e0d5765.", "created": "2016-08-31T11:49:00.000000"}], "components": ["DOCS", "Server"], "created": "2015-12-18T03:27:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Run `update-policy-repo policy1 repo1` "}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a992726"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynv6f:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_611739924_*|*_1_*:*_1_*:*_7327_*|*_10007_*:*_1_*:*_71504052_*|*_3_*:*_1_*:*_2867672_*|*_5_*:*_1_*:*_4425711597_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_12607816006_*|*_10005_*:*_1_*:*_8937373371"}], "description": "Inspired by [user feedback|https://github.com/puppetlabs/razor-server/pull/174#issuecomment-165739697].\n\nTwo feasible use cases for needing a command like this are:\n- A user notices a mistype of the source for a repo after creating it\n- A user decides that a policy should use a different repo (OS update without messing with the policy list)\n\nUpdating a policy's repo will provide this functionality with little interruption to existing installs, if any are occurring. This command should simply update the reference so that repo file requests can be immediately redirected to the new repo.\n\nArguments should be `policy` and `repo`.\nPositional arguments should be (1) \\[policy\\] (2) \\[repo\\].\n\n*In Scope*\n- Add command to update the reference that a policy holds toward a repo\n- Stop errors from being thrown when a repo is deleted but its ISO is [not downloaded yet|https://github.com/puppetlabs/razor-server/blob/master/lib/razor/messaging/sequel.rb#L120]. (Hint: add an exception/log to the command and continue without raising an exception)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11656", "fixedVersions": ["RAZOR 1.5.0"], "id": "11656", "issueType": "Story", "key": "RAZOR-762", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-08-31T11:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add command to update a policy's referenced repo", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/339.", "created": "2016-02-11T21:23:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Testing this ticket will also resolve RAZOR-543.", "created": "2016-02-16T11:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit be9900c.", "created": "2016-02-16T17:33:00.000000"}], "components": ["DOCS", "Server"], "created": "2015-12-17T09:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4d427f0b"}, {"fieldName": "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": "RAZOR-766"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyo51z:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_4475387_*|*_1_*:*_1_*:*_9864_*|*_10007_*:*_1_*:*_416548935_*|*_3_*:*_1_*:*_34232032_*|*_5_*:*_1_*:*_1266915957_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_612400074_*|*_10006_*:*_1_*:*_1888319975_*|*_10005_*:*_1_*:*_2957007198"}], "description": "We have had [users|https://groups.google.com/forum/#!topic/puppet-razor/VN-LPa69P3c] on the mailing list unable to get the additional functionality to work without allowing unsigned drivers into the WIM. We should allow the user to pass an argument, {{-allowunsigned}}, to the build-razor-winpe.ps1 script, in order to allow unsigned extra drivers into the WIM.\n\n*In Scope*\n- Update the build-razor-winpe.ps1 script to accept a `-allowunsigned` argument.\n- Have that argument determine if the {{-forceunsigned}} argument is passed to the windows driver addition procedure.\n- Add documentation for this property in FOSS docs.\n\n*Optional*\n- Throw an error if an unsigned driver is included in the folder.\n\n*Note*\nThis is effect only Windows machines", "epicLinkSummary": "Razor Windows Improvements", "estimate": "PT0S", "externalId": "11944", "fixedVersions": ["RAZOR 1.2.0"], "id": "11944", "issueType": "Story", "key": "RAZOR-761", "labels": [], "originalEstimate": "PT0S", "parent": "11945", "parentSummary": "Razor Windows Improvements", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-02-23T20:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow unsigned drivers as argument to build-razor-winpe.ps1 script", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The main docs impact here is updating https://docs.puppetlabs.com/pe/latest/razor_reference.html#delete-a-repo-delete-repo:\n{noformat}\nThis command deletes the repository from Razor\u2019s internal database, but does not remove any content that might be in the repo_store_root directory on the Razor server.\n{noformat}\n\nThis will only be deleted if the {{iso-url}} argument was supplied when the repo was created. That argument means that Razor downloaded content into that {{repo_store_root}} directory, so it will be undone.", "created": "2015-12-18T10:47:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Ready for review: https://github.com/puppetlabs/pe-docs-private/commit/5a8870ee0d3fed28f7a500293df0882919fc0702", "created": "2015-12-18T12:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I have commented on the PR.", "created": "2015-12-18T12:41:00.000000"}], "components": ["DOCS"], "created": "2015-12-16T15:37:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ef5ed2b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hz3luf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_181315_*|*_10009_*:*_1_*:*_2173208_*|*_5_*:*_1_*:*_12880076824_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_255699386_*|*_10005_*:*_1_*:*_159899080"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11160", "fixedVersions": [], "id": "11160", "issueType": "Sub-task", "key": "RAZOR-760", "labels": [], "originalEstimate": "PT0S", "parent": "11498", "parentSummary": "Repo folder not being deleted when repo is deleted", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update RNs - delete-repo bug", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Client"], "created": "2015-12-15T17:15:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@b5eaeec"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:g"}, {"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": "16/Dec/15"}], "description": "Error messages on the client are a bit inconsistent, with some code duplication and unclear messages for various problems. These should be refactored into a common handler.\n\nAs a result, the functionality from https://github.com/puppetlabs/razor-client/pull/21 can be included.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11329", "fixedVersions": [], "id": "11329", "issueType": "Story", "key": "RAZOR-759", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Consolidate razor-client HTTP error messages", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623cfdfb8d8b9c0068b93e3c", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/333.", "created": "2015-12-15T11:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit c62fb62.", "created": "2015-12-17T09:39:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Follow-on issue to only delete repo directories created with the `iso-url` argument tracked by https://github.com/puppetlabs/razor-server/pull/335.", "created": "2015-12-18T12:14:00.000000"}], "components": ["Server"], "created": "2015-12-14T19:40:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@55edb9e3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hynvfr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_67191307_*|*_1_*:*_1_*:*_58152850_*|*_10007_*:*_2_*:*_175031441_*|*_5_*:*_1_*:*_5530493855_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_1573200118"}], "description": "When the user runs `razor delete-repo --name some-repo`, the intent is to delete the folder if the user supplied an `iso-url` property. That was, in many cases, not happening because many ISO archives contain files which are read-only, so the secure delete attempt fails.\n\nThe fix for this is to update the contents of the repo directory to allow write privileges so they can be deleted properly.\n\nThis manifested when the user tried to create a new repo with the same name. The archive extraction would fail from libarchive, and the error was \"Can't unlink already-existing object\", likely from the same permissions reason.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11498", "fixedVersions": ["RAZOR 1.2.0"], "id": "11498", "issueType": "Bug", "key": "RAZOR-757", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-01-05T12:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Repo folder not being deleted when repo is deleted", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/65.", "created": "2015-12-15T16:46:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit a5fc2a3.", "created": "2015-12-15T16:47:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Pulling this into the next sprint as 1) the work is already done, and 2) it relates closely to the usability of positional arguments, which were tackled last sprint.", "created": "2015-12-15T16:49:00.000000"}, {"author": "557058:67562e3b-e143-430b-8745-78ffb8c5cc23", "body": "Here is the format recommended by UX", "created": "2016-02-17T15:51:00.000000"}, {"author": "557058:67562e3b-e143-430b-8745-78ffb8c5cc23", "body": "[~accountid:623cfc5b01f8660070b787cf] Can you review Melissa's comments above? I am not strongly opinionated about it.", "created": "2016-02-19T10:40:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:67562e3b-e143-430b-8745-78ffb8c5cc23] [~accountid:557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df] The code is merged and we are approaching the next FOSS release. Is there further discussion needed about this?", "created": "2016-02-26T12:22:00.000000"}], "components": ["Client"], "created": "2015-12-14T13:58:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Each command should have a USAGE section which includes the positional arguments for the command, in order."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@a2fde44"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz35qv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_208163118_*|*_1_*:*_1_*:*_6366_*|*_5_*:*_1_*:*_665908835_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_4870977997_*|*_10004_*:*_1_*:*_1583073688_*|*_10006_*:*_1_*:*_46013_*|*_10005_*:*_1_*:*_96456769"}], "description": "Now that positional arguments exist, it makes sense to render the position of\narguments in the command help. Something like:\n\n{code}\n# USAGE\n\n  razor create-tag [name] [rule] <flags>\n\n# SYNOPSIS\nCreate a new tag\n\n# DESCRIPTION\nCreate a new tag, and set the rule it will use to match on facts and node\nmetadata.\n...\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11739", "fixedVersions": ["RAZOR 1.2.0"], "id": "11739", "issueType": "Story", "key": "RAZOR-756", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-03-01T19:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add USAGE section to command help", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/331.", "created": "2015-12-11T20:14:00.000000"}], "components": ["DOCS", "Server"], "created": "2015-12-11T18:01:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5e541b0c"}, {"fieldName": "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": "RAZOR-765"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynvc7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_3032894760_*|*_1_*:*_1_*:*_8888_*|*_10007_*:*_1_*:*_22006649093_*|*_5_*:*_1_*:*_2161861802_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_7956745"}], "description": "Razor currently does not ship with any Fedora tasks. Given the popularity of the distro, it makes sense that we would include a task for this. The Redhat stock task almost works for installing the Fedora ISO, but it would help to just add a Fedora task to the list properly.", "epicLinkSummary": "Razor Post-GA Platform (Task) Additions", "estimate": "PT0S", "externalId": "11943", "fixedVersions": ["RAZOR 1.5.0"], "id": "11943", "issueType": "Story", "key": "RAZOR-755", "labels": ["docs_reviewed", "maintenance"], "originalEstimate": "PT0S", "parent": "11443", "parentSummary": "Razor Post-GA Platform (Task) Additions", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-09-26T16:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add Fedora 23 task", "timeSpent": "PT0S", "updated": "2016-11-11T14:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/330.", "created": "2015-12-11T13:27:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I'm not clear on the extent of this issue, but I know it should be fixed soon. The problem came up while I was testing a new Fedora task (same steps/task as RHEL) where the rc.local file was not being executed. It's clear that on systems with systemd, the rc.local file will never have a shebang line. It's more a question of which OS's require the shebang line.", "created": "2015-12-11T13:38:00.000000"}], "components": ["Server"], "created": "2015-12-11T13:19:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@76053319"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynv5z:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_506013_*|*_10007_*:*_1_*:*_72819820462_*|*_6_*:*_1_*:*_0"}], "description": "On installs with systemd, the kickstart file will drop the /etc/rc.d/rc.local file without a shebang line at the start. This causes, in some cases, the post_install script not to run.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11496", "fixedVersions": ["RAZOR 1.5.0"], "id": "11496", "issueType": "Bug", "key": "RAZOR-754", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2018-04-02T10:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "/etc/rc.d/rc.local file should have a shebang line", "timeSpent": "PT0S", "updated": "2018-04-02T10:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Microkernel uploaded to http://links.puppetlabs.com/content.py?mode=QUERY&query=razor-microkernel-007.", "created": "2015-12-10T02:53:00.000000"}, {"author": "63d40635a05386069cdb69d6", "body": "[~accountid:557058:ab1874a9-45ab-4efc-91aa-5200c165b2c4] not sure what action we take normally here, but help [~accountid:557058:2d7665f0-9d98-407f-86d7-8c4ec6a18b20] do the needful. ", "created": "2015-12-10T12:37:00.000000"}, {"author": "557058:ab1874a9-45ab-4efc-91aa-5200c165b2c4", "body": "In this case I don't think we need to do anything other than give a (y) ", "created": "2015-12-10T14:53:00.000000"}], "components": ["Microkernel"], "created": "2015-12-10T02:48:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@76efcb9d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz3hyv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_17179_*|*_10007_*:*_1_*:*_48027287_*|*_3_*:*_1_*:*_247287_*|*_5_*:*_1_*:*_10226385_*|*_6_*:*_1_*:*_0"}], "description": "When the microkernel is loading, it pauses for ~30 seconds at times before showing the login screen. Recreating the microkernel with a later build of CentOS will resolve this issue.\n\nThe only change here is to use a later CentOS build \u2014\u00a01503.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11159", "fixedVersions": ["RAZOR 1.1.0"], "id": "11159", "issueType": "Bug", "key": "RAZOR-753", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-12-10T16:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Microkernel takes a long time to show login screen", "timeSpent": "PT0S", "updated": "2016-03-30T17:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] this is awesome - nice work.\n\n", "created": "2015-12-10T10:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Keeping the priority of this as \"Major\" since I believe it will drastically help usability.", "created": "2018-03-09T19:11:00.000000"}], "components": ["Client", "Server"], "created": "2015-12-09T22:25:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Node Management"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@24818f0a"}, {"fieldName": "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 Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-4"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Restructure Razor CLI Help"}, {"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": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "dark_blue"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymqyv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Dec/15"}], "description": "As part of a broader effort to improve the help structure in the CLI, this ticket can be used to group related tickets and make more concrete the final design for the CLI help. This is a design proposal for CLI help pages.\n\n*Main help page* (truncated)\n({{razor}} and {{razor --help}})\n- Short help page that provides a summary of what Razor does.\n- List other help pages, namely {{razor help collections}}, {{razor help commands}}, and {{razor help authentication}} (other topics forthcoming)\n\n*Commands* (new)\n({{razor help commands}})\n- List all commands in Razor. This is moved from {{razor --help}}.\n- Tell user how to drill into help for a given, existing command (e.g. {{razor create-policy --help}}).\n\n*Command Item* (existing)\n({{razor help <command>}})\n- Explain how to use a command\n\n*Collections* (new)\n({{razor help collections}})\n- List all collections in Razor. This is moved from {{razor --help}}.\n- Refactor {{razor policies}} and {{razor policies --help}} to both read from files, similar to how commands work.\n\n*Collection Item* (new)\n({{razor help <collection>}})\n- Explain what each collection does in Razor, e.g. {{razor --help policies}} to describe what policies are and how they work.\n- Explain relevant commands that operate on the collection/object.\n- The implementation of this should be a dedicated file in `lib/razor/collections` similar to commands.\n\n*Help topics* (new)\n({{razor help <topic>}})\n- List various help topics.\n- {{razor help authentication}}: Moving the authentication text into its own help\n- The implementation of this should be a file in `lib/razor/help` similar to commands.\n\n*Implementation notes*\nWhen running a given help-related command in the client, there is some ambiguity if there were ever a conflict in command, collection, or help. For that reason, the order of search should go as follows:\n- Is the command a help command? YES if {{razor}} or contains {{--help}} or the first argument is {{help}}. If there is an extra argument supplied (after {{razor}} or {{razor help}}):\n-# Search specific commands {{razor help create-policy}}\n-# Search specific collections {{razor help nodes}}\n-# Test \"commands\" {{razor help commands}}\n-# Test \"collections\" {{razor help collections}}\n-# Search help topics {{razor help authentication}}\n\n*API Updates*\nAside from the shuffling of existing help content, the server API changes for this will be minimal:\n- Add {{help}} section to /api endpoint:\n{code}\n{\n  \"commands\": [ /* omitted */ ],\n  \"collections\": [ /* omitted */ ],\n  \"help\": [\n    {\n      \"name\": \"authentication\",\n      \"rel\": \"http://api.puppetlabs.com/razor/v1/help/authentication\",\n      \"id\": \"http://localhost:8150/api/help/authentication\"\n    }\n  ],\n  \"version\": {\n    \"server\": \"1.1.0\"\n  }\n}\n{code}\n- Add {{help}} section to /api/collection/* endpoints:\n{code}\n{\n  \"name\": \"policies\",\n  \"help\": {\n    \"summary\": \"Policies\",\n    \"description\": \"Policies tie together the rules, as tags, with the task and repo containing\\nthe OS to install, and the broker for post-install configuration.\\n\\nThe overall list of policies is ordered, and policies are considered in that\\norder.\\n\\nThe shiro string for this command is 'policies' and security is *enabled*.\",\n    \"commands\": [ /* It might be better to just throw this in the \"description\" */\n      {\n        \"name\": \"add-policy-tag\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/add-policy-tag\",\n        \"id\": \"http://localhost:8150/api/commands/add-policy-tag\"\n      },\n      {\n        \"name\": \"create-policy\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/create-policy\",\n        \"id\": \"http://localhost:8150/api/commands/create-policy\"\n      },\n      {\n        \"name\": \"delete-policy\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/delete-policy\",\n        \"id\": \"http://localhost:8150/api/commands/delete-policy\"\n      },\n      {\n        \"name\": \"enable-policy\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/enable-policy\",\n        \"id\": \"http://localhost:8150/api/commands/enable-policy\"\n      },\n      {\n        \"name\": \"disable-policy\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/disable-policy\",\n        \"id\": \"http://localhost:8150/api/commands/disable-policy\"\n      },\n      {\n        \"name\": \"modify-policy-max-count\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/modify-policy-max-count\",\n        \"id\": \"http://localhost:8150/api/commands/modify-policy-max-count\"\n      },\n      {\n        \"name\": \"move-policy\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/move-policy\",\n        \"id\": \"http://localhost:8150/api/commands/move-policy\"\n      },\n      {\n        \"name\": \"remove-policy-tag\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/remove-policy-tag\",\n        \"id\": \"http://localhost:8150/api/commands/remove-policy-tag\"\n      },\n      {\n        \"name\": \"update-policy-tag\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/update-policy-tag\",\n        \"id\": \"http://localhost:8150/api/commands/update-policy-tag\"\n      },\n      {\n        \"name\": \"update-policy-task\",\n        \"rel\": \"http://api.puppetlabs.com/razor/v1/commands/update-policy-task\",\n        \"id\": \"http://localhost:8150/api/commands/update-policy-task\"\n      }\n    ],\n    \"examples\": {\n      \"api\": \"...\",\n      \"cli\": \"...\"\n    },\n    \"full\": \"...\"\n  },\n  \"spec\": \"http://api.puppetlabs.com/razor/v1/collections/policies\",\n  \"items\": [],\n  \"total\": 0\n}\n{code}\n- Add /api/help/* endpoints:\n{code}\n{\n  \"name\": \"authentication\",\n  \"help\": {\n    \"summary\": \"Authentication\",\n    // This probably needs tweaking.\n    \"description\": \"# Access Control\\n\\nEach command and collection has its own access pattern.\\nWords surrounded by `%{...}` are substitutions from the input data: typically\\nthe name of the object being modified, or some other critical detail, these\\nallow roles to be granted partial access to modify the system.\\n\\nFor more detail on how the permission strings are structured and work, you can\\nsee the [Shiro Permissions documentation][shiro].  That pattern is expanded\\nand then a permission check applied to it, before the command is authorized.\\n\\nThese checks only apply if security is enabled in the Razor configuration\\nfile; on this server security is currently disabled.\\n\\n[shiro]: http://shiro.apache.org/permissions.html\",\n    \"full\": \"...\"\n  },\n  \"spec\": \"http://api.puppetlabs.com/razor/v1/help/authentication\"\n}\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11441", "fixedVersions": [], "id": "11441", "issueType": "Epic", "key": "RAZOR-752", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Designing", "statusCategory": "In Progress", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Restructure Razor CLI Help", "timeSpent": "PT0S", "updated": "2018-03-09T19:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Added optional step 4:\n\n4. (Optional) To include additional Windows drivers in the WIM image -- for example, if your machines require proprietary UCS drivers -- place the signed .inf files in the `extra-drivers` folder. \n\n   To include unsigned drivers, you must edit the `build-razor-winpe.ps1` script to include a `-ForceUnsigned` flag on the `add-windowsdriver` Powershell command.\n\n657a8980700c16cf40b1326dfb51d2502bf841dd", "created": "2015-12-09T16:38:00.000000"}], "components": ["DOCS"], "created": "2015-12-09T11:53:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@769c474"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz3hm7:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "New Feature"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2713648_*|*_5_*:*_1_*:*_13899085660_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_14428427"}], "description": "This functionality was released in 2015.3.x, and so should be updated in the documentation.\n\nA note should be added to https://docs.puppetlabs.com/pe/latest/razor_windows_install.html#setting-up-a-windows-installation explaining that if extra Windows (.inf extension) drivers are needed, place them in the `extra-drivers` folder prior to running the Powershell command in step 4 and they will be included in the .wim.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11158", "fixedVersions": ["RAZOR 1.1.0"], "id": "11158", "issueType": "Sub-task", "key": "RAZOR-749", "labels": [], "originalEstimate": "PT0S", "parent": "11442", "parentSummary": "Confirm ability to specify drivers", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Document ability to specify drivers", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df] would you mind taking a look from UX perspective? ", "created": "2015-12-12T12:42:00.000000"}], "components": ["Client", "Server"], "created": "2015-12-08T22:32:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Be able to run the following command to reinstall three nodes using the same policy:\n {{razor reinstall-node --same-policy node1,node2,node3}}\n\nOr:\n\n{{razor reinstall-node --same-policy --nodes node1,node2,node3}}"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3bff2f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:f"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Dec/15"}], "description": "Several commands would benefit from a shortened syntax that would merge several instances of the same command into one list-like command. For example:\n{code}razor delete-node node1\nrazor delete-node node2\nrazor delete-node node3\n...\n{code}\nThis should be possible in the same command, e.g. as:\n{code}razor delete-node node1,node2,node3\n{code}\n*Steps*\n - Server: Update the API to indicate that the argument can be an array of strings.\n - [Optional] Server: Update commands to accept an array where it makes sense (see command list below)\n - Client (ticket forthcoming when open question below is resolved): Allow the user to input a variable list of positional arguments, which will be converted into multiple command executions (see question below)\n\n*In Scope*\n - Server: Update the API to indicate which positional argument is the variable argument\n - [Optional] Server: Update commands to accept an array where it makes sense (see command list below)\n\n*Open Questions*\n - The main question here is around how the client should deal with the variable arguments for commands which currently only support a single argument. I see two options (I lean toward option #2 for the error messaging reason):\n ## Keep commands lightweight (potentially avoiding timeouts) and have the client issue multiple POST requests to the server. *PRO*: No server updates, requests should not timeout\n ## Facilitate bulk operations by updating the API to accept an array in several commands. All nodes being updated either succeed or fail atomically.\u00a0*PRO*: Less work for the client, less bandwidth usage/network overhead, simpler error message handling\n\nThe commands which should have variable arguments are:\n||Command||Positional Arguments||Variable Argument||\n|add-policy-tag|name, tag, rule|*(none)*|\n|create-broker|name, broker-type|*(none)*|\n|create-hook|name, hook-type|*(none)*|\n|create-policy|name|*(none)*|\n|create-repo|name|*(none)*|\n|create-tag|name, rule|*(none)*|\n|create-task|name|*(none)*|\n|delete-broker|name|name|\n|delete-hook|name|name|\n|delete-node|name|name|\n|delete-policy|name|name|\n|delete-repo|name|name|\n|delete-tag|name|name|\n|disable-policy|name|name|\n|enable-policy|name|name|\n|modify-node-metadata|node|*(none)*|\n|modify-policy-max-count|name, max_count|*(none)*|\n|move-policy|name|*(none)*|\n|reboot-node|name|name|\n|register-node|*(none)*|*(none)*|\n|reinstall-node|name|name|\n|remove-node-metadata|node, key|key|\n|remove-policy-tag|name, tag|tag|\n|run-hook|name|*(none)*|\n|set-node-desired-power-state|name, to|*(none)*|\n|set-node-hw-info|node|*(none)*|\n|set-node-ipmi-credentials|name|*(none)*|\n|update-broker-configuration|broker, key, value|*(none)*|\n|update-hook-configuration|node, key, value|*(none)*|\n|update-node-metadata|node, key, value|*(none)*|\n|update-policy-task|policy, task|*(none)*|\n|update-repo-task|repo, task|*(none)*|\n|update-tag-rule|name, rule|*(none)*|\n\nIn cases where\u00a0the name\u00a0argument is the name of a node, two aliases should be added: node and nodes.\n\nThis should allow flags to be passed in addition to the variable argument(s). These flags will apply to each variable argument. For example, to run `reinstall-node` on three nodes (node1, node2, node3) and have each reinstall use the `same-policy` flag, you could do any of these:\n{code}razor reinstall-node --same-policy node1,node2,node3\nrazor reinstall-node node1,node2,node3 --same-policy // same effect\nrazor reinstall-node --nodes node1,node2,node3 --same-policy //same effect{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11098", "fixedVersions": [], "id": "11098", "issueType": "Story", "key": "RAZOR-748", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow variable argument lists", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [{"attacher": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "created": "2015-12-15T10:06:00.000000", "name": "razor_client.markdown", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10170"}, {"attacher": "557058:7edde36a-845c-4e08-9172-c7b2f0265ea1", "created": "2015-12-16T08:24:00.000000", "name": "razor_client.markdown", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10274"}], "comments": [], "components": ["DOCS"], "created": "2015-12-02T16:11:00.000000", "creator": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7da27508"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3e2n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14345_*|*_10007_*:*_1_*:*_1627804_*|*_3_*:*_2_*:*_10041367_*|*_10009_*:*_2_*:*_89001343_*|*_5_*:*_1_*:*_13306602979_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_64469531_*|*_10005_*:*_1_*:*_1033788295"}], "description": "All the old commands work exactly the same.\nAdds user convenience.\n\nthree ways to communicate w/ server:\n1. API calls (in JSON) directly to server\n2. use the Razor client commands\n3. use the Razor client to send JSON file to server ({{--json}} argument)\n\nScott recommends focusing more on razor-client use, because it's better UX.\n\nExample:\ncommand w/ positional argument: {{razor delete-policy policy1}}\ncommand w/ flags: {{razor delete-policy --name policy1}}\n\nCommands with only one argument are most likely to be used positionally.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10928", "fixedVersions": [], "id": "10928", "issueType": "Sub-task", "key": "RAZOR-746", "labels": [], "originalEstimate": "PT0S", "parent": "10995", "parentSummary": "Client should consume positional arguments", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update docs - positional arguments", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c16c6bef8a60068c79ce4", "attachments": [{"attacher": "623c16c6bef8a60068c79ce4", "created": "2015-11-19T07:23:00.000000", "name": "server.log", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10217"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:623c16c6bef8a60068c79ce4] Can you attach your server.log file, performing any necessary scrubbing of sensitive information? It should be located at /var/log/razor-server/server.log.", "created": "2015-11-19T07:19:00.000000"}, {"author": "623c16c6bef8a60068c79ce4", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] here you go. \n\n(I replaced the real domain and server names)", "created": "2015-11-19T07:24:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This looks strange. [~accountid:623c16c6bef8a60068c79ce4] Can you verify that restarting the service does not fix the issue? Were any files in e.g. the razor-torquebox package modified? It looks like the razor-server service is not being deployed to Torquebox.", "created": "2015-11-19T08:56:00.000000"}, {"author": "623c16c6bef8a60068c79ce4", "body": "I tried restarting the service several times. I even reinstalled razor-torquebox (and I removed all files).\n\nAnd I did not modify anything except the /etc/razor/config.yaml file after the update.", "created": "2015-11-19T09:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:623c16c6bef8a60068c79ce4] Ok. Can you send me a list of the contents of the `/var/lib/razor-torquebox/deployments` folder? If it contains `razor-knob.yml`, can you include the contents of that file too?", "created": "2015-11-19T10:54:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:623c16c6bef8a60068c79ce4] I found a relevant note that hadn't been ported to our documentation yet, as far as I can tell:\nhttps://github.com/puppetlabs/razor-server/blob/master/ext/redhat/razor-server.spec.erb#L103-L111\n\nThe application will need to be redeployed manually when performing an upgrade, since database migrations may be necessary. You can redeploy it using these two commands:\n{code}\nsource /etc/razor/razor-torquebox.sh\ntorquebox deploy /opt/razor --env=production\n{code}\n\nAfter that, you should be able to start the service normally. Sorry for the inconvenience. I've added a note [here|https://github.com/puppetlabs/razor-server/wiki/Installation#upgrading] to help with future problems with that.", "created": "2015-11-19T11:20:00.000000"}, {"author": "623c16c6bef8a60068c79ce4", "body": "That worked, thank you!", "created": "2015-11-19T12:00:00.000000"}], "components": ["Client", "Server"], "created": "2015-11-19T05:17:00.000000", "creator": "623c16c6bef8a60068c79ce4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@e8325a3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz372v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7333870_*|*_10009_*:*_1_*:*_14515405_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_14488652"}], "description": "After updating from razor 1.0.1 to razor 1.1.0 via the rpm package (yum update) I can't reach the razor API server anymore. This error is seen in the client:\nError: Could not connect to the server at http://localhost:8150/api\n\n", "environment": "*Razor Server*\nCentOS 6.7\nrazor-server 1.1.0\nrazor-torquebox 3.1.1.10\nrazor-client 1.1.0\n\n*PostgreSQL DB*\nCentOS 6.6\npostgresql 9.3 ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11439", "fixedVersions": [], "id": "11439", "issueType": "Bug", "key": "RAZOR-737", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c16c6bef8a60068c79ce4", "resolution": "Won't Fix", "resolutionDate": "2015-11-19T15:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Application not redeployed when upgrading", "timeSpent": "PT0S", "updated": "2015-11-19T15:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a46a94a57610068e6760c", "body": "I read that I can do: razor nodes node# --full \nin googlegroups. This would be a great example for things I would like to read about when reading the help. There should be no hidden flags, and I should not need to trawl through source code to find flags. ", "created": "2015-11-19T01:00:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] I agree this should be added, thanks for filing the ticket. Regarding the \"[taking] a very long time to return\", are you using JRuby or MRI to run the client? It'll be much faster using MRI since JRuby has a long startup time.", "created": "2015-11-19T15:26:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Marking as 'needs information' (blocked) because we believe this may be resolved by default as part of a separate ticket ([~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] to file) ", "created": "2016-02-03T16:55:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] who do you need information from? Internal or from me?", "created": "2016-02-04T01:32:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Oh sorry, [~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37]. We also use the \"Needs Information\" status to reflect that a ticket is currently blocked on another ticket (since we don't have a \"blocked\" status). [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] believes this work will be a part of a separate issue he is planning to file under an epic to improve the overall CLI experience for Razor. Once that ticket is done, we can resolve this one. ", "created": "2016-02-04T18:16:00.000000"}], "components": [], "created": "2015-11-19T00:51:00.000000", "creator": "623a46a94a57610068e6760c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a9b9df7"}, {"fieldName": "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": "RAZOR-752"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:d"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Nov/15"}], "description": "It would be useful to have build-in help for razor collections similarly to how there is build-in help for razor commands. Also currently when typing razor help events for example it takes a very long time to return, just to tell you that won't work. It should come back much quicker to say the command is wrong.", "epicLinkSummary": "Restructure Razor CLI Help", "estimate": "PT0S", "externalId": "11095", "fixedVersions": [], "id": "11095", "issueType": "Improvement", "key": "RAZOR-736", "labels": [], "originalEstimate": "PT0S", "parent": "11441", "parentSummary": "Restructure Razor CLI Help", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a46a94a57610068e6760c", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Help for razor collections", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] This is only considered an error if the tag does not supply a default for that fact. You can supply a default with the second argument of the \"fact\" operator via:\n{code}\nrazor create-tag --name fakefact --rule '[\"<=\", [\"num\", [\"fact\", \"pscount_fairies\", 0]], 2]'\n{code}\nCan you confirm that the above method will work for you?", "created": "2015-11-18T07:23:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] adding a fact with a default value takes away the error message yes but does not feel like the correct solution for example something like a mac address.", "created": "2015-11-19T07:24:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] I'll repurpose this ticket to ensure that tags are not evaluated on a node until the node has reported its facts. I think that should resolve the issue you saw.", "created": "2015-12-09T16:59:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] thanks, let me know when you have some code and I can give it a whirl and see how it behaves.", "created": "2015-12-10T08:46:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this in favor of RAZOR-732, which targets the true issue (the {{macaddress}} fact).\n\nIf a fact does not have a default value and does not exist on a node, it *should* be an error when the tag tries to evaluate. An error like this should halt the node's provisioning so it cannot be falsely provisioned.\n\nThe takeaway is that if a fact is optional (physical vs. virtual or some such), always specify a default value for the fact. If the fact in question is {{macaddress}}, follow RAZOR-732 for the path forward on that.\n\n/cc [~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37]", "created": "2016-01-14T19:49:00.000000"}], "components": ["Server"], "created": "2015-11-18T07:14:00.000000", "creator": "623a46a94a57610068e6760c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ca71c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1zfz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"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_*:*_2_*:*_866770_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1848914174_*|*_10006_*:*_1_*:*_709549156_*|*_10005_*:*_1_*:*_2410777730"}], "description": "When a tag is being evaluated, it currently evaluates against all nodes in the system. However, nodes go through a phase prior to running the microkernel where a stub node is created. This results in errors for all tags which reference \"fact\" operators that do not have a default value.\n\n*In Scope*\nDefer evaluation of a tag on a given node if the node does not have its facts reported yet.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11324", "fixedVersions": [], "id": "11324", "issueType": "Bug", "key": "RAZOR-735", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a46a94a57610068e6760c", "resolution": "Won't Fix", "resolutionDate": "2016-01-14T19:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tags should not evaluate on a node until the node reports its facts", "timeSpent": "PT0S", "updated": "2016-01-14T19:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] Our current solution to the \"too many items returned\" is to supply a `--limit` argument, which will only return the most recent N entries by default. So you'll write: `razor events --limit 10` to only return the ten most recent events.\n\nAnother relevant ticket about events taking too long to load is covered [here|https://puppet.atlassian.net/browse/RAZOR-433].", "created": "2015-11-18T07:28:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "Thanks! What about ordering? Could we get the ordering changed around to be more in line with other unix tools?", "created": "2015-11-18T08:24:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] What do you have in mind by \"more in line with other unix tools\"? Just looking for what sort of usage to target.", "created": "2015-11-18T15:02:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I would love to see the ordering to be:\n1\n2\n3\n\nrather than \n3\n2\n1\n\nwhen I do  a listing of events. If you have 7000 events then not having to scroll up and down helps. \n\nPossibly also a more parseable output. The borders around the fields are nice but machines don't like it. Mostly though the ordering and the speed.", "created": "2015-11-19T00:36:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] Do you have something like a CSV in mind when you refer to more parseable output? I could see an `--order ascending` flag or something for collections like this.", "created": "2015-12-09T18:30:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I did not specifically had csv format in mind. I was rather thinking about something like \"ls -l\" which is very paraseble in terms of its output format. With regards to the ordering, I personally think the ordering should the the other way around than it is currently by default. Having an --order flag to change the ordering would be great but I don't want to specify it every time I run the command. Being able to specify it when needed would be handy. Just to be clear the default order that I expect is that the last item in the log should be the last item to show. Put differently the most recent item in the log should be the last item when doing a listing", "created": "2015-12-10T08:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The main issue I see with the `ls -l` idea is that the content returned could potentially be very long in several fields. We could remove the borders, but I'm not sure that really buys us much in terms of readability. I was thinking something like CSV would be a neat machine-parseable option.", "created": "2015-12-10T14:38:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "That is a good point. So CSV to enable one to handle longer fields would be a good option or an user specified separator character.", "created": "2015-12-10T14:59:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/332.", "created": "2015-12-11T20:11:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "PR needs nontrivial rebasing, moving this back to Ready for Engineering.", "created": "2018-05-31T21:59:00.000000"}], "components": [], "created": "2015-11-18T04:38:00.000000", "creator": "623a46a94a57610068e6760c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ee58db1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:c"}, {"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": "18/Nov/15"}], "description": "The events are in the wrong order. One would expect the last event to be the last you see and the first the first you see. However you see the last error messages first which means you have to scroll up your console.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11323", "fixedVersions": [], "id": "11323", "issueType": "Bug", "key": "RAZOR-734", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a46a94a57610068e6760c", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor events in wrong order", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user Can you specify what appears incorrect about the behavior? Are you expecting the node to match a policy but it is not?", "created": "2015-11-17T16:29:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Can you also verify that the dhcp_mac value in the description here equals the macaddress fact by typing `razor nodes node17 facts`?", "created": "2015-11-18T00:10:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d2cd9796-b1d6-492e-b097-9a367288237b", "body": "Hi [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], Correct. There is a policy associated with a tag and the tag has successfully matched the node however the policy is not being applied.\n\nThere is also no fact dhcp_mac...hence why we are matching on macaddress: Here is a snipet from the facts:\n\n                virtual: vmware\n              is_virtual: true\n              interfaces: eno16780032,lo\n   ipaddress_eno16780032: x.x.x.59\n  macaddress_eno16780032: 00:50:56:a0:bd:24\n     netmask_eno16780032: 255.255.255.192\n         mtu_eno16780032: 1500\n            ipaddress_lo: 127.0.0.1\n              netmask_lo: 255.0.0.0\n                  mtu_lo: 65536\n              macaddress: 00:50:56:a0:bd:24\n           memorysize_mb: 994.34\n           memoryfree_mb: 901.37\n                 netmask: 255.255.255.192\n", "created": "2015-11-18T02:45:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user For completeness, can you add `razor policies`, `razor policies <name> --full`, and `razor nodes node17 log` to the list of command outputs you have in the description?\n\nThere are many reasons why a policy may not match a node, so I'd like to verify that none of the following apply:\n- Policy is disabled\n- Max count on the policy is met or exceeded\n- Another policy higher in the list qualifies\n- Multiple tags are listed on the policy and not all tags apply to the node\n\nIf none of these is the case, I'd like to create a simple reproduction case. From the description, it seems like we can use something like this:\n\n{code}\nrazor create-tag --name 'ubuntuTest1' --rule '[\"in\", [\"fact\", \"macaddress\"], \"00:50:56:a0:bd:24\"]'\nrazor create-broker --name noop --broker-type noop\nrazor create-repo --name noop --no-content --task noop\nrazor create-policy --name ubuntu --repo noop --broker noop --hostname 'host${id}.example.com' --root-password secret --tag ubuntuTest1\n{code}", "created": "2015-11-18T07:47:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "So ...\n* The policy was not disabled\n* The max count had not yet been reached\n* We had a one to one relationship with a tag that matches a MAC and a policy per machine rather than a generic policy so nothing should have interefered.\n* Only one tag were associated with the policy.\n\nWe ended up creating a new database which has solved our issues for now. It is not ideal but we were pressed for time to get things working. Former user might be able to add some more information.", "created": "2015-11-18T08:28:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d2cd9796-b1d6-492e-b097-9a367288237b", "body": "The only other thing I can add as this is a lab we can supply the database to see if that helps explain the problem?", "created": "2015-11-18T08:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] Can you clarify what you mean by creating a new database? Do you mean you ran `razor-admin reset-database`?\n\nDid the node just sit in the microkernel rather than binding to this policy?", "created": "2015-11-18T15:07:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] We created a new database using:\npostgresql::server::db { 'razortest':\n  user     => 'razor',\n  password => postgresql_password('razor', 'mypass'),\n}\n\nand then stopped razor and repointed the production config to this database.\n\nThe node were stuck in the microkernel. It would boot and then after a period of time just go to the microkernel terminal and then not budge from there. A reboot would have the same effect.\n\n", "created": "2015-11-19T00:28:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "This problem appears to be related to [RAZOR-735|https://puppet.atlassian.net/browse/RAZOR-735] if you have tag that does not match a node and does not have a default value then razor will not match the facts against the tags, and will not boot and install. I were able to reproduce and verify this.", "created": "2015-11-19T07:25:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:09c1047d-128d-445c-8e48-94fcb2377e5c", "body": "I have been investigating around this issue for the last day and this is what I found.\n\nAs far as I can tell the macaddress property is decided to be the first interface that is configured for the device at the time the facts are generated. This would be fine if the microkernel was receiving the interfaces in the order in which they are configured in the BMC. \n\nSo I did some digging and I discovered that the interfaces ARE presented to the OS in the order in which they are configured. The problem arrises when udevd kicks in and attempts to rename the devices in a predictable fashion. As part of this process the device formerly known as eth0 is now known as 'xxxxxx10' (I cant remember the exact string) and another device that formerly was known as eth1 is now known as 'xxxxxx9'. When the facts are generated the second interface is being seen as the first.  \n\nI tried disabling the predictable device renaming and it worked successfully, the order that the interfaces were configured on the chassis was presented all of the way up to the fact generator.\n\nThe potential solutions I can see are: \n1) Disable predictable device naming by passing net.ifnames=0 in as a kernel parameter to the microkernel, or configuring udevd inside the microkernel image.\n2) Extend the rule system in razor to allow a method such as has_macaddress()\n3) Accept that macaddress is a defective fact and not use it for anything, instead relying on more specific facts -such as dhcp_mac- (as Charlie said dhcp_mac is not available as a fact). ", "created": "2015-11-20T05:43:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] thoughts? ", "created": "2015-12-22T16:13:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I see side effects to all three approaches:\n1) This will change the [predictability|http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames] of interface names, so existing facts AFAICT may not match in the correct way. Seems like a breaking change to me.\n2) -This is a bit clunky", "created": "2015-12-22T18:32:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I think option (2) is actually pretty nice: ultimately, all you care about is that some NIC in the machine has the MAC address you're looking for, as the device names that the microkernel assigns are really not all that interesting. So a way to say in a tag rule \"match any machine that has this MAC\" seems great for that. But then you'd probably want the same for a rule like {{[\"in\" [\"fact\" \"macaddress\"] \"mac1\" \"mac2\" .. \"macN\"]}} - maybe allow passing multiple MACs to {{has_macaddress}} so you can say {{[\"has_macaddress\" \"mac1\" \"mac2\" \"mac3\"]}} ?\n\nI agree that (1) sounds a bit scary as it can break the behavior for existing users", "created": "2016-01-14T20:29:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "{{\"has_macaddress_like\"}} might be an interesting addition too, matching regular expression(s) to any available mac addresses.", "created": "2016-01-14T20:42:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I am closing this ticket, as the original focus has shifted. The work from the comments in this ticket has been re-ticketed into RAZOR-780 and RAZOR-781, feel free to add notes there if anything was missed.\n\n/cc [~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] Former user Former user", "created": "2016-01-14T21:42:00.000000"}], "components": [], "created": "2015-11-17T09:31:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d2cd9796-b1d6-492e-b097-9a367288237b", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1d23cb5c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz35dr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "17/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1927342548_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_2006949728_*|*_10005_*:*_1_*:*_1120761897"}], "description": "We are finding that razor is not predictably matching hosts to tags or policies. Deleting the policies and tags often results in success. This is not dependable for production. For example:\n\n# razor tags\n| name        | rule                                                     | nodes | policies |\n| ubuntuTest1 | [\"in\", [\"fact\", \"macaddress\"], \"00:50:56:a0:bd:24\"]      | 1     | 1        |\n\n# razor tags ubuntuTest1 nodes\n| name   | dhcp_mac          | tags        | policy | metadata count |\n| node17 | 00:50:56:a0:bd:24 | ubuntuTest1 | ---    | 0              |\n\n# razor nodes\n| name   | dhcp_mac          | tags        | policy | metadata count |\n| node17 | 00:50:56:a0:bd:24 | ubuntuTest1 | ---        | 0              |", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11942", "fixedVersions": [], "id": "11942", "issueType": "Bug", "key": "RAZOR-732", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:d2cd9796-b1d6-492e-b097-9a367288237b", "resolution": "Won't Fix", "resolutionDate": "2016-01-14T21:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tags and policies are not being dependently matched", "timeSpent": "PT0S", "updated": "2016-03-14T16:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Which version of razor-client are you using? The `razor --version` command will tell you.", "created": "2015-11-12T21:22:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This should be fixed if you update the gem to razor-client 1.1.0.", "created": "2015-11-12T21:43:00.000000"}, {"author": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "body": "The razor --version command fails because the client cannot connect to the server\n\n\n{code:java}\nscl enable ruby193 'razor --version'\nError: Could not connect to the server at http://localhost:8080/api. More help is available after pointing\nthe client to a Razor server\n\n{code}\n\nWhen I try to upgrade to the latest gem I get a version incompatibility message about mustache-1.0.2 requiring ruby > 2.0", "created": "2015-11-13T10:11:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831] Oh right, you'd need to run `razor -u http://localhost:8150/api --version`.", "created": "2015-11-13T10:43:00.000000"}, {"author": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "body": "The problem is resolved with 1.1.0 Server and 1.1.0 Client.\n\nThe installation instructions are no longer quite right, since 1.1 requires Ruby 2 rather then 1.9.3\n\n", "created": "2015-11-16T12:35:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831] Are you seeing an error using Ruby 1.9.3?", "created": "2015-11-16T13:08:00.000000"}, {"author": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "body": "When I try to install the Razor client gem on Ruby 1.93, I get a version incompatibility message saying that mustache-1.0.2 requires ruby > 2.0\n", "created": "2015-11-16T13:11:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831] Do you know what's requiring Mustache? I don't see that in our dependency list, and it's not installed on any machines where I'm using the razor-client gem.", "created": "2015-11-18T15:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this ticket. If a reproducible scenario is provided, reopening in a new ticket is welcome.", "created": "2015-12-11T20:13:00.000000"}], "components": ["Client"], "created": "2015-11-12T21:17:00.000000", "creator": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7c6afdd0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz33p3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1596870_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_2500172830"}], "environment": "The server has updated default http port to 8150 but the client still comes out of the box with port set to 8080", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11493", "fixedVersions": [], "id": "11493", "issueType": "Bug", "key": "RAZOR-731", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "resolution": "Cannot Reproduce", "resolutionDate": "2015-12-11T20:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client still has 8080 as default port", "timeSpent": "PT0S", "updated": "2015-12-11T20:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Does this cause an error, or is it just ignored?", "created": "2015-11-12T21:19:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is an issue, and one I'd like to see fixed, but we need to know how severe this is. FOSS is currently not using the `https.port` parameter anyway, so if the service still starts up, this is a minor issue that can be resolved in time.", "created": "2015-11-12T21:45:00.000000"}, {"author": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "body": "It does not cause an error on my system (Centos 6.7)\n", "created": "2015-11-13T10:06:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Ok thanks for the extra information. We will get this resolved for an upcoming release.", "created": "2015-11-13T10:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 569d0ce.", "created": "2015-12-03T09:57:00.000000"}], "components": ["Server"], "created": "2015-11-12T21:12:00.000000", "creator": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1a55f7af"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz33ov:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_23259090_*|*_1_*:*_1_*:*_1994051_*|*_5_*:*_1_*:*_8366214800_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_46724555_*|*_10005_*:*_1_*:*_1725195916"}], "description": "In the SysV init script on Line 127, \n\n{code}\nhttps.port=#{RAZOR_HTTPS_PORT}\n{code}\n\nshould be \n{code}\nhttps.port=${RAZOR_HTTPS_PORT}\n{code}\n\nthe number sign should be a dollar sign\n", "environment": "RPM-based Linux install on 11/12/15", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11437", "fixedVersions": ["RAZOR 1.2.0"], "id": "11437", "issueType": "Bug", "key": "RAZOR-730", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:612d7760-1d4b-4a75-8e4b-d3d300bc4831", "resolution": "Fixed", "resolutionDate": "2015-12-03T16:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Typo in /etc/init.d/razor-server at Line 127", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is this something release engineering will need to help with? ", "created": "2015-11-11T10:01:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:63d40635a05386069cdb69d6] any thoughts on RE impact for this ticket? ", "created": "2016-02-17T16:54:00.000000"}], "components": ["Server"], "created": "2015-11-10T17:15:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@166bbca9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynvdb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_8552318487_*|*_5_*:*_1_*:*_615896747_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_594254591_*|*_10005_*:*_1_*:*_10892569605"}], "description": "RE-6603 tracks the update of JRuby from 1.7.13 to 1.7.24. This ticket should track testing for potential regressions in the Razor codebase as a result.\n\nCI will run when the change is made, which will check the majority of update issues. Installing a node should also be tested (manually or via CI addition).\n\n*In Scope*\n* Run CI tests when RE-6603 is completed\n* Test installation of a new node using later JRuby version\n* File tickets for any issues which arise\n\n*Out of Scope*\n* Update JRuby versions (RE-6603)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11738", "fixedVersions": ["RAZOR 1.4.0"], "id": "11738", "issueType": "Task", "key": "RAZOR-729", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-06-29T16:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Test update of JRuby version from 1.7.13 to 1.7.19", "timeSpent": "PT0S", "updated": "2016-07-06T19:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Bumping priority to Major since this is an easy win to improve usability.", "created": "2018-04-02T10:45:00.000000"}], "components": [], "created": "2015-11-05T12:31:00.000000", "creator": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6ac48e75"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:b"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Apr/18"}], "description": "When razor attempts to download the microkernel, if the url in bootstrap.ipxe is invalid, you get the error:\n Could not boot image: Result too large ([http://ipxe.org/46022001])\n\nThe error is not very helpful. Razor should only attempt to proceed after checking the response for any non 200 response code. If the response code is not 200, we should display an error with the response body to make it easier to understand what the problem is and troubleshoot.\n\nWe could possibly use the imgfetch command first, followed by chain or boot instead of just chain to determine success before attempting to boot to microkernel.\n\n*In Scope*\n * Modify the bootstrap.ipxe script to call {{imgfetch}} prior to {{chain}}.\n * Emit an error message including any present details (status code, error message) if {{imgfetch}} fails.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11941", "fixedVersions": [], "id": "11941", "issueType": "Bug", "key": "RAZOR-728", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Confusing error when the url in bootstrap.ipxe is incorrect", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3da45f1f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xzj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1077737314_*|*_6_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%223.2.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": "11155", "fixedVersions": [], "id": "11155", "issueType": "Sub-task", "key": "RAZOR-723", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5d342ce8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xzb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1077741032_*|*_6_*:*_1_*:*_0"}], "description": "  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]: 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": "11094", "fixedVersions": [], "id": "11094", "issueType": "Sub-task", "key": "RAZOR-722", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@25665fc8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xz3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1396117_*|*_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": "10902", "fixedVersions": [], "id": "10902", "issueType": "Sub-task", "key": "RAZOR-721", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Do", "resolutionDate": "2015-11-04T04:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-11-04T04:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7be0ac1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xyv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_739050880_*|*_5_*:*_1_*:*_338694346_*|*_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": "10926", "fixedVersions": [], "id": "10926", "issueType": "Sub-task", "key": "RAZOR-720", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-12T17:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@62d84c4c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xyn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_738948232_*|*_5_*:*_1_*:*_338799809_*|*_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": "11940", "fixedVersions": [], "id": "11940", "issueType": "Sub-task", "key": "RAZOR-719", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-12T17:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5478c1e1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xyf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_733207850_*|*_5_*:*_1_*:*_344542359_*|*_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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11736", "fixedVersions": [], "id": "11736", "issueType": "Sub-task", "key": "RAZOR-718", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-12T16:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[This script|https://confluence.puppetlabs.com/display/ENG/Smoke+testing+razor-server+and+razor-client] will perform the smoke testing.", "created": "2015-11-04T04:50:00.000000"}], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@254bcc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xy7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_643274859_*|*_5_*:*_1_*:*_434477001_*|*_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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11652", "fixedVersions": [], "id": "11652", "issueType": "Sub-task", "key": "RAZOR-717", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-11T15:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "razor-torquebox SHA: -773d8aa1b27b7a80fe220da2434d43c0bb368033-\nUpdated SHA: f49ac07d8d6c05e0cab0767f1fc3b37757ea9db4", "created": "2015-11-04T04:48:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "the tag is going to be 3.1.1.10, due do some shortcuts I took on previous releases. Apologies for the strange version numbers.", "created": "2015-11-04T12:12:00.000000"}, {"author": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "body": "Packages available at http://builds.puppetlabs.lan/razor-torquebox/3.1.1.10/", "created": "2015-11-11T14:12:00.000000"}], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3ad94a0a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xxz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_632898438_*|*_3_*:*_1_*:*_7067099_*|*_5_*:*_1_*:*_437788566_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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:31c596d1-7e27-4c91-bc18-1254edb3caab] 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": "11492", "fixedVersions": [], "id": "11492", "issueType": "Sub-task", "key": "RAZOR-716", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-11T14:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1a7efc1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xxr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1308408_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11434", "fixedVersions": [], "id": "11434", "issueType": "Sub-task", "key": "RAZOR-715", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Do", "resolutionDate": "2015-11-04T04:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-11-04T04:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5290c33a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xxj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1292746_*|*_5_*:*_1_*:*_1076466093_*|*_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.Z', Save as \"Introduced in X.Y.Z\", 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": "11321", "fixedVersions": [], "id": "11321", "issueType": "Sub-task", "key": "RAZOR-714", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-04T04:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1f04b84d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xxb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1256551_*|*_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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11154", "fixedVersions": [], "id": "11154", "issueType": "Sub-task", "key": "RAZOR-713", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Do", "resolutionDate": "2015-11-04T04:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-11-04T04:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:26:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1705880f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xx3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1239765_*|*_5_*:*_1_*:*_1076524796_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11092", "fixedVersions": [], "id": "11092", "issueType": "Sub-task", "key": "RAZOR-712", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-04T04:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:25:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4d501136"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xwv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_503314_*|*_5_*:*_1_*:*_1077263987_*|*_6_*:*_1_*:*_0"}], "description": "Use the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10901", "fixedVersions": [], "id": "10901", "issueType": "Sub-task", "key": "RAZOR-711", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-04T04:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:25:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@607857a0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xwn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_498626_*|*_5_*:*_1_*:*_1077269105_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%223.2.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10924", "fixedVersions": [], "id": "10924", "issueType": "Sub-task", "key": "RAZOR-710", "labels": [], "originalEstimate": "PT0S", "parent": "11939", "parentSummary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-04T04:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-04T04:25:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1ae67b1b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xwf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1077804687_*|*_6_*:*_1_*:*_0"}], "description": "razor-torquebox 3.1.1.10 2015-11-16 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": "11939", "fixedVersions": [], "id": "11939", "issueType": "Task", "key": "RAZOR-709", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-torquebox 3.1.1.10 2015-11-16 Release", "timeSpent": "PT0S", "updated": "2015-11-16T15:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6a1ff548"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xpj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1118478568_*|*_5_*:*_1_*:*_267419_*|*_6_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.1.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": "10900", "fixedVersions": [], "id": "10900", "issueType": "Sub-task", "key": "RAZOR-708", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@89552c3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xpb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1118466744_*|*_5_*:*_1_*:*_280804_*|*_6_*:*_1_*:*_0"}], "description": "  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]: 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": "10922", "fixedVersions": [], "id": "10922", "issueType": "Sub-task", "key": "RAZOR-707", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Nothing to push that hasn't already been updated in code docs or wiki.", "created": "2015-11-04T00:19:00.000000"}], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@155ed879"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xp3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_26216720_*|*_5_*:*_1_*:*_1092534178_*|*_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": "11938", "fixedVersions": [], "id": "11938", "issueType": "Sub-task", "key": "RAZOR-706", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@68a6e89f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xov:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_780098045_*|*_5_*:*_1_*:*_338653457_*|*_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": "11735", "fixedVersions": [], "id": "11735", "issueType": "Sub-task", "key": "RAZOR-705", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-12T17:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1860a6cf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xon:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_780088799_*|*_5_*:*_1_*:*_338664434_*|*_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": "11650", "fixedVersions": [], "id": "11650", "issueType": "Sub-task", "key": "RAZOR-704", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-12T17:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@55725948"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xof:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_774205686_*|*_5_*:*_1_*:*_344550837_*|*_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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11491", "fixedVersions": [], "id": "11491", "issueType": "Sub-task", "key": "RAZOR-703", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-12T16:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[This script|https://confluence.puppetlabs.com/display/ENG/Smoke+testing+razor-server+and+razor-client] will perform the smoke testing.", "created": "2015-11-04T00:18:00.000000"}], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@662a2591"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xo7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_62746402_*|*_5_*:*_1_*:*_434490870_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_621523620"}], "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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11432", "fixedVersions": [], "id": "11432", "issueType": "Sub-task", "key": "RAZOR-702", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-11T15:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "razor-client SHA: -7064e8b722560f2fd6bc5f49f1071a0f1b789ebf-\nUpdated SHA: -28916c689ddb8ee5b428e388a8f651478bc00b56-\nUpdated SHA: ec35604d7ddadcc78c217d34586f48ec0aa3e4c0", "created": "2015-11-04T00:17:00.000000"}, {"author": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "body": "Gem available at http://builds.puppetlabs.lan/razor-client/1.1.0/", "created": "2015-11-04T10:28:00.000000"}], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4600a649"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xnz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_62443141_*|*_3_*:*_2_*:*_415339257_*|*_5_*:*_2_*:*_640980438_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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:31c596d1-7e27-4c91-bc18-1254edb3caab] 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": "11320", "fixedVersions": [], "id": "11320", "issueType": "Sub-task", "key": "RAZOR-701", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-11T12:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4532a148"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xnr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24062811_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11153", "fixedVersions": [], "id": "11153", "issueType": "Sub-task", "key": "RAZOR-700", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Won't Fix", "resolutionDate": "2015-11-03T23:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-11-03T23:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Completed in the [razor-server release ticket|RAZOR-684].", "created": "2015-11-04T00:14:00.000000"}], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@40cfb39f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xnj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_25895947_*|*_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.Z', Save as \"Introduced in X.Y.Z\", 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": "11090", "fixedVersions": [], "id": "11090", "issueType": "Sub-task", "key": "RAZOR-699", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Won't Do", "resolutionDate": "2015-11-04T00:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-11-04T00:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@79f8b74c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xnb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24046794_*|*_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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10997", "fixedVersions": [], "id": "10997", "issueType": "Sub-task", "key": "RAZOR-698", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Won't Fix", "resolutionDate": "2015-11-03T23:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-11-03T23:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3443705d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xn3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_25590419_*|*_5_*:*_1_*:*_1093183368_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10919", "fixedVersions": [], "id": "10919", "issueType": "Sub-task", "key": "RAZOR-697", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-04T00:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@685fc45d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xmv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_25374878_*|*_5_*:*_1_*:*_1093399153_*|*_6_*:*_1_*:*_0"}], "description": "Use the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11937", "fixedVersions": [], "id": "11937", "issueType": "Sub-task", "key": "RAZOR-696", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-04T00:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@17e5cd69"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xmn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_25370687_*|*_5_*:*_1_*:*_1093408540_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.1.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11734", "fixedVersions": [], "id": "11734", "issueType": "Sub-task", "key": "RAZOR-695", "labels": [], "originalEstimate": "PT0S", "parent": "11649", "parentSummary": "razor-client 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-04T00:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T17:02:00.000000", "creator": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@270f69f2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xmf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1118805713_*|*_6_*:*_1_*:*_0"}], "description": "razor-client 1.1.0 2015-11-16 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": "11649", "fixedVersions": [], "id": "11649", "issueType": "Task", "key": "RAZOR-694", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client 1.1.0 2015-11-16 Release", "timeSpent": "PT0S", "updated": "2015-11-16T15:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:47:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@779ee618"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xkv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1119691924_*|*_6_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.1.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": "11733", "fixedVersions": [], "id": "11733", "issueType": "Sub-task", "key": "RAZOR-693", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:47:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ec7c663"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xkn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1119696348_*|*_6_*:*_1_*:*_0"}], "description": "  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]: 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": "11647", "fixedVersions": [], "id": "11647", "issueType": "Sub-task", "key": "RAZOR-692", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Nothing to push that hasn't already been updated in code docs or wiki.", "created": "2015-11-04T00:20:00.000000"}], "components": [], "created": "2015-11-03T16:47:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4644f591"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xkf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_27190514_*|*_5_*:*_1_*:*_1092506139_*|*_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": "11490", "fixedVersions": [], "id": "11490", "issueType": "Sub-task", "key": "RAZOR-691", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:47:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@15079337"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xk7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_782431781_*|*_5_*:*_1_*:*_337268648_*|*_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": "11430", "fixedVersions": [], "id": "11430", "issueType": "Sub-task", "key": "RAZOR-690", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-12T18:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:47:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@a35dd9a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xjz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_781064849_*|*_5_*:*_1_*:*_338637647_*|*_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": "11319", "fixedVersions": [], "id": "11319", "issueType": "Sub-task", "key": "RAZOR-689", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-12T17:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@48b25b24"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xjr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_775141025_*|*_5_*:*_1_*:*_344563488_*|*_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\nParticipants:\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]\n  * [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11152", "fixedVersions": [], "id": "11152", "issueType": "Sub-task", "key": "RAZOR-688", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-12T16:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[This script|https://confluence.puppetlabs.com/display/ENG/Smoke+testing+razor-server+and+razor-client] will perform the smoke testing.", "created": "2015-11-04T00:18:00.000000"}], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@599ca8ae"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xjj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_685204040_*|*_5_*:*_1_*:*_434504737_*|*_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.\nFor the Puppet gem, we don't yet have automated acceptance testing, so some quick manual smoke testing should always be performed.  Platform packages express their dependencies differently than gems, so it's possible to encounter a situation where the build pipeline produced packages out of sync with the gems.\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  * gem - select one Linux for the universal gem, Windows with x64 platform-specific gem, and Windows with x86 platform-specific gem\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": "11088", "fixedVersions": [], "id": "11088", "issueType": "Sub-task", "key": "RAZOR-687", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-11T15:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:31c596d1-7e27-4c91-bc18-1254edb3caab", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "razor-server SHA is: -46b4d677e0b56feaca4db0047d90435960287dd7-\nNew SHA: -7e3203be72066c9eb6fc931e622667c324e787a4-\nNewer SHA (release date update): 19a4010a9c5d33c9ea9a2d2f881e1be9a70bd877\n\nNOTE: The packaging is supposed to handle the versioning for razor-server. /cc [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] as we've had a \"gotcha\" on this in the past.", "created": "2015-11-04T00:16:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you remind me about the gotcha you're referring to? I don't remember having any issues tagging and building razor-server...", "created": "2015-11-04T10:57:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] The issue was with how the version is \"burned into\" razor-server. We had an instance where the version, which is queried from the razor-client, was incorrect.", "created": "2015-11-04T11:03:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Are you referring to the jruby version? I noticed you also created razor-torquebox release tickets that include a bump that changes the version of jruby, which means we're going to have a lot more work to do. We might not be able to get this release work done this week. This is a lot more work than just a razor-server release.\n\nAre you referring to the razor-server version in the gemspec or some other place? ", "created": "2015-11-04T11:07:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] I can move the torquebox version back. I'd bumped it because the razor-torquebox tags were mirroring the version of torquebox being included. I suppose this could be 3.1.1.1 or something.\n\nI was referring to the version of razor-server that gets read/calculated/burned in from version.rb.", "created": "2015-11-04T11:19:00.000000"}], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@769924bc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xjb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_63190210_*|*_3_*:*_1_*:*_612348091_*|*_5_*:*_1_*:*_444171494_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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:31c596d1-7e27-4c91-bc18-1254edb3caab] 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": "10996", "fixedVersions": [], "id": "10996", "issueType": "Sub-task", "key": "RAZOR-686", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-11T12:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7496da62"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xj3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24966849_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story\n\nDependencies:\n  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10916", "fixedVersions": [], "id": "10916", "issueType": "Sub-task", "key": "RAZOR-685", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2015-11-03T23:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-11-03T23:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in: https://puppet.atlassian.net/issues/?filter=15916\nIntroduced in: https://puppet.atlassian.net/issues/?filter=15917", "created": "2015-11-04T00:12:00.000000"}], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3084377e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xiv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_26765910_*|*_5_*:*_1_*:*_1092949981_*|*_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.Z', Save as \"Introduced in X.Y.Z\", 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": "11936", "fixedVersions": [], "id": "11936", "issueType": "Sub-task", "key": "RAZOR-684", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-04T00:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6029e069"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xin:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24931145_*|*_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  * Reconcile git commits and JIRA tickets\n  * Update version number in source\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11773", "fixedVersions": [], "id": "11773", "issueType": "Sub-task", "key": "RAZOR-683", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2015-11-03T23:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-11-03T23:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is done dynamically by packaging. /cc [~accountid:557058:31c596d1-7e27-4c91-bc18-1254edb3caab]", "created": "2015-11-04T00:08:00.000000"}], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1a075b1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xif:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_26514494_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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  * Reconcile git commits and JIRA tickets\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11646", "fixedVersions": [], "id": "11646", "issueType": "Sub-task", "key": "RAZOR-682", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Do", "resolutionDate": "2015-11-04T00:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-11-04T00:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1dfb35b1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xi7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_26336584_*|*_5_*:*_1_*:*_1093383473_*|*_6_*:*_1_*:*_0"}], "description": "Use the [ticketmatch|https://github.com/puppetlabs/ticketmatch] script to ensure all tickets referenced in the commit log have a bug targeted at the release, and ensure all tickets targeted at the release have a corresponding commit.\n\n  * cd ~/work\n  * git clone https://github.com/puppetlabs/ticketmatch\n  * cd ~/work/puppet # or whatever the repo is you're releasing from\n  * ruby ../ticketmatch/ticketmatch.rb\n    Enter Git From Rev: 4.1.0\n    Enter Git To Rev: |master| stable\n    Enter JIRA project: |PUP|\n    Enter JIRA fix version: PUP 4.2.0\n\nThe output may contain the following headers:\n\nCOMMIT TOKENS NOT FOUND IN JIRA (OR NOT WITH FIX VERSION OF ...)\n\nLists git commits that don't have a corresponding ticket, at least not for the specified fix version. If the commit has a ticket, but the ticket is not targeted correctly, then the ticket's fixVersion should be updated. This can frequently happen if a ticket is initially targeted for a future release (master), but is pulled into an earlier release (stable), but the ticket's fixVersion is not updated.\n\nUNRESOLVED ISSUES NOT FOUND IN GIT\n\nLists JIRA tickets that have a matching fixVersion, e.g. PUP 4.2.0, but none of the commits have the JIRA ticket in the subject. If the JIRA ticket really is fixed in the release, e.g. the JIRA ticket was typo'ed in the git commit subject, then leave the ticket as is. If the JIRA ticket should not be fixed in the release, e.g. it was originally targeted for the release, but was later bumped out, then update the ticket's fixVersion accordingly, e.g. PUP 4.3.0.\n\nUNRESOLVED ISSUES FOUND IN GIT\n\nLists JIRA tickets have a git commit, but the ticket is not resolved. Usually this is because the ticket is still passing CI or going through manual validation. It can also occur if a fix is made, but a problem is encountered, and the ticket is reopened. If that happens, make sure the ticket reflects reality, so it's clear the ticket is not actually fixed in the release.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11489", "fixedVersions": [], "id": "11489", "issueType": "Sub-task", "key": "RAZOR-681", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-04T00:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reconcile git commits and JIRA tickets", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@fd02119"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2xhz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_25086488_*|*_5_*:*_1_*:*_1094636178_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.1.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11428", "fixedVersions": [], "id": "11428", "issueType": "Sub-task", "key": "RAZOR-680", "labels": [], "originalEstimate": "PT0S", "parent": "11318", "parentSummary": "razor-server 1.1.0 2015-11-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-03T23:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-11-16T15:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-11-03T16:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3cf4d94a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2xhr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1119746102_*|*_6_*:*_1_*:*_0"}], "description": "razor-server 1.1.0 2015-11-16 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": "11318", "fixedVersions": [], "id": "11318", "issueType": "Task", "key": "RAZOR-679", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-16T15:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-server 1.1.0 2015-11-16 Release", "timeSpent": "PT0S", "updated": "2015-11-16T15:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:f27ef514-99cf-47f1-b8b7-9a1e9d466c72", "body": "I've submitted a pull request which is linked to the ticket that should address this. In my testing this solution works for CentOS and Debian.", "created": "2015-11-03T12:38:00.000000"}], "components": ["Server"], "created": "2015-11-03T12:37:00.000000", "creator": "557058:f27ef514-99cf-47f1-b8b7-9a1e9d466c72", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@58dcccfa"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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|hz2x5j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_260231425_*|*_6_*:*_1_*:*_0"}], "description": "The razor_postinstall.sh script that is placed after installing an operating system uses a hardcoded eth0 value to find the primary IP address with ip addr. On CentOS 7 the primary broadcast interface is not called eth0, so this information does not get updated correctly for razor.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11771", "fixedVersions": [], "id": "11771", "issueType": "Bug", "key": "RAZOR-678", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:f27ef514-99cf-47f1-b8b7-9a1e9d466c72", "resolution": "Fixed", "resolutionDate": "2015-11-06T12:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor postinstall script uses hardcoded eth0 value to find IP address", "timeSpent": "PT0S", "updated": "2015-11-06T12:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] Is this something that needs to be fixed?", "created": "2016-07-20T16:58:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:40232c77-9d9b-410c-9f53-90adbf41eeb9] as of razor-server 1.4.0, it has been fixed.", "created": "2016-07-20T17:01:00.000000"}], "components": [], "created": "2015-11-03T03:33:00.000000", "creator": "623a46a94a57610068e6760c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@89a5f05"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2wl3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Jul/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_22509134482_*|*_6_*:*_1_*:*_0"}], "description": "The package called razor-server is not available from the repositories that puppetlabs-release-pc1-trusty.deb provides.\n\nThe repositories the package provides are:\n# Puppetlabs PC1 trusty Repository\ndeb http://apt.puppetlabs.com trusty PC1\ndeb-src http://apt.puppetlabs.com trusty PC1", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11769", "fixedVersions": ["RAZOR 1.4.0"], "id": "11769", "issueType": "Improvement", "key": "RAZOR-677", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a46a94a57610068e6760c", "resolution": "Fixed", "resolutionDate": "2016-07-20T17:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor should be available in Puppet Collection Repository", "timeSpent": "PT0S", "updated": "2016-07-20T17:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "70121:daea3119-cdf4-43ae-bb73-2d9ef9d71335", "attachments": [], "comments": [{"author": "70121:daea3119-cdf4-43ae-bb73-2d9ef9d71335", "body": "Seems to only be in some CentOS repos, not RHEL.", "created": "2015-11-03T00:09:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:70121:daea3119-cdf4-43ae-bb73-2d9ef9d71335] could you provide your repro scenario? We had no trouble getting Razor up on RHEL 7.", "created": "2015-12-09T17:00:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "ping [~accountid:70121:daea3119-cdf4-43ae-bb73-2d9ef9d71335]", "created": "2016-01-06T16:39:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "I am closing this ticket due to inactivity.\n\nIf you feel this is an incorrect response or have additional feedback, please reply in this ticket.\n", "created": "2016-01-20T16:33:00.000000"}], "components": [], "created": "2015-11-02T16:35:00.000000", "creator": "70121:daea3119-cdf4-43ae-bb73-2d9ef9d71335", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2e14a4e0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2wev:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3198256255_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_3627195566"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11935", "fixedVersions": [], "id": "11935", "issueType": "Bug", "key": "RAZOR-676", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "70121:daea3119-cdf4-43ae-bb73-2d9ef9d71335", "resolution": "Won't Fix", "resolutionDate": "2016-01-20T16:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor dependency libarchive-devel package missing from some RHEL 7 repos", "timeSpent": "PT0S", "updated": "2017-03-13T11:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "This looks like 2 pts for docs, based on the linked ticket.", "created": "2015-11-13T14:15:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/64.", "created": "2015-12-14T01:07:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit 4af0b8b.", "created": "2015-12-14T01:07:00.000000"}], "components": ["Client"], "created": "2015-11-01T01:42:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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 user can supply positional arguments that are allowed via the API."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@189f8a69"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynzx3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "13/Nov/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_32301109_*|*_1_*:*_1_*:*_3230102983_*|*_3_*:*_1_*:*_215475877_*|*_5_*:*_1_*:*_7091145604_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_347443734_*|*_10006_*:*_1_*:*_267487504"}], "description": "Several commands [will have positional arguments added|https://puppet.atlassian.net/browse/RAZOR-673]. The CLI should use these arguments, allowing the user to specify them in the command line. The scheme for how this is implemented in the API is described in RAZOR-673.\n\nSince the unit testing of this functionality will require recorded responses from the server (VCR files, in Ruby), this issue is blocked by RAZOR-673.\n\n*In Scope*\n- (Client) Utilize the positional arguments, if included, in the CLI.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10995", "fixedVersions": ["RAZOR 1.2.0"], "id": "10995", "issueType": "Story", "key": "RAZOR-675", "labels": ["stability/usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-12-18T10:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client should consume positional arguments", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-10-29T15:58:00.000000", "creator": "557058:f27ef514-99cf-47f1-b8b7-9a1e9d466c72", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ab144e8"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:a"}], "description": "Razor README included with the microkernel describes the gpg key used for signing by the short id. Due to the possibility of key collisions we should consider specifying the full GPG key ID or fingerprint.\n\nThis is written in:\n{code:java}\nrazor-el-mk/build-livecd-root{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10994", "fixedVersions": [], "id": "10994", "issueType": "Improvement", "key": "RAZOR-674", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:f27ef514-99cf-47f1-b8b7-9a1e9d466c72", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor documentation suggests finding a key by short id", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Nice, yes, this would be a great usability improvement", "created": "2015-10-22T12:22:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I am not sure I fully understand the plan - wouldn't it be enough to enhance the API to include which arguments can be positional arguments and in what order, and then have the client send them the normal way, i.e. without any changes to the actual commands ? (Maybe that's the plan you have in mind already, just wasn't sure from the description)", "created": "2015-10-22T12:52:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] We are on the same page. When I say we are updating the commands, I mean updating the command files, which generate the metadata that's presented in the API. I envision something like this:\n\nIn each command, add to e.g. `remove-node-metadata.rb`:\n{code}\ndefault_arguments ['node', 'key']\n{code}\nIn the API, the schema section would ideally include this, but I think it may need to go alongside:\n{code}\n{\n  \"name\":\"remove-node-metadata\",\n  ... help and command description ...\n  \"schema\":{\n    \"node\":{\n      \"type\":\"string\"\n    },\n    \"key\":{\n      \"type\":\"string\"\n    },\n    \"all\":{\n      \"type\":\"boolean\"\n    },\n  },\n  \"default_arguments\":[\"node\",\"key\"]\n}\n{code}\n\nFrom an API standpoint, I think it's easier to consume as an array, rather than a `default_index: 1` or something in each attribute. I could see the index method working too, however.", "created": "2015-10-22T15:07:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Completely on board with how the metadata/description of commands changes. A minor nit is that these should be called 'positional arguments' or some such rather than default arguments.\n\nWhat I meant was that what the actual commands accept as input shouldn't be affected by positional argument. In your example for the {{remove-node-metadata}} command I'd put the burden on the client to stock the first positional argument into the body of the command as {{node}} etc. It might be worth thinking of indicating positional arguments slightly differently, something like\n\n{code}\n{\n  \"name\":\"remove-node-metadata\",\n  ... help and command description ...\n  \"schema\":{\n    \"node\":{\n      \"type\":\"string\".\n      \"position\": 1\n    },\n    \"key\":{\n      \"type\":\"string\",\n      \"position\": 2\n    },\n    \"all\":{\n      \"type\":\"boolean\"\n    },\n  }\n}\n{code}\n\nmight work better for the client though I am not certain of that.", "created": "2015-10-22T15:50:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "groom request", "created": "2015-10-23T16:30:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I am +1 with calling it `positional_arguments` instead, as that's more accurate. It seems like a matter of aesthetics to me whether we use an integer `position` or an array `positional_arguments`. The array seemed a bit more elegant, involving less logic/counting/validation on the client side, but I'm fine with either.", "created": "2015-10-26T02:18:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Sounds good .. I agree that we should go with whatever indication for positional arguments is easiest for the client", "created": "2015-10-26T11:05:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is the title of this ticket still accurate? ", "created": "2015-10-27T18:14:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Fixed, thanks.", "created": "2015-10-27T18:33:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] to file a ticket for client side consumption", "created": "2015-10-28T16:20:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Ticket filed as RAZOR-675.", "created": "2015-11-01T01:51:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Description updated to include API specification.", "created": "2015-12-07T11:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/328.", "created": "2015-12-09T10:36:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Should the arguments for {{update-hook-configuration}} be *hook*, *key*, *value*, rather than *node*, *key*, *value* per the list above?\n\nRelated: \nIs *node* actually an attribute for {{update-hook-configuration}}? If yes, is it required or optional? \n\nThe help is confusing:\n\n# Attributes\n\n * *hook*\n   - The hook for which to update configuration.\n   - This attribute is required.\n   - It must be of type string.\n   - It must match the name of an existing hook.\n\n * key\n   - The key to change in the configuration.\n   - This attribute is required.\n   - It must be of type string.\n   - It must be between 1 and Infinity in length.\n\n * value\n   - The value for the configuration.\n\n * clear\n   - If true, the key will be either reset back to its default or\n     removed from the configuration, depending on whether a default exists.\n   - It must be of type boolean.\n\n# EXAMPLES\n\n  Set a single key from a node:\n\n  razor update-hook-configuration *--node node1 \\*\n      --key my_key --value twelve", "created": "2016-01-15T15:00:00.000000"}], "components": ["DOCS", "Server"], "created": "2015-10-22T12:18:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "From the list in the description, the user can enter e.g. `razor delete-broker broker1` and successfully delete the broker."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1ecc5cca"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hynzxb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "22/Oct/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_32308096_*|*_1_*:*_1_*:*_453361206_*|*_10007_*:*_2_*:*_388209581_*|*_3_*:*_1_*:*_430200251_*|*_5_*:*_1_*:*_7153077736_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_3_*:*_295222674_*|*_10004_*:*_1_*:*_1371687_*|*_10006_*:*_1_*:*_3181686393_*|*_10005_*:*_1_*:*_77982660"}], "description": "Several commands would benefit from some arguments not requiring explicit flags (e.g. `--name`). In order to properly handle this case in the CLI, the API will need to supply a client with the expected positional arguments for each command. Here are the modifications:\n\n||Command||Positional Arguments||\n|add-policy-tag|name, tag, rule|\n|create-broker|name, broker-type|\n|create-hook|name, hook-type|\n|create-policy|name|\n|create-repo|name|\n|create-tag|name, rule|\n|create-task|name|\n|delete-broker|name|\n|delete-hook|name|\n|delete-node|name|\n|delete-policy|name|\n|delete-repo|name|\n|delete-tag|name|\n|disable-policy|name|\n|enable-policy|name|\n|modify-node-metadata|node|\n|modify-policy-max-count|name, max_count|\n|move-policy|name|\n|reboot-node|name|\n|register-node|*(none)*|\n|reinstall-node|name|\n|remove-node-metadata|node, key|\n|remove-policy-tag|name, tag|\n|run-hook|name|\n|set-node-desired-power-state|name, to|\n|set-node-hw-info|node|\n|set-node-ipmi-credentials|name|\n|update-broker-configuration|broker, key, value|\n|update-hook-configuration|node, key, value|\n|update-node-metadata|node, key, value|\n|update-policy-task|policy, task|\n|update-repo-task|repo, task|\n|update-tag-rule|name, rule|\n\nIf a command includes multiple options, the user may supply from 0 to N positional arguments. For example, `add_policy_tag` includes three positional arguments above: `name`, `tag`, `rule`. The user may supply no positional arguments, just `name`, `name` and `tag`, or all three arguments.\n\nThe steps for implementation are:\n- (Server) Modify the API to facilitate positional argument lists.\n- (Server) Add positional arguments for each of the commands listed above.\n- (Client) Utilize the positional arguments, if included, in the CLI.\n\n*In Scope*\n* (Server) Modify the API to facilitate positional argument lists\n* (Server) Add positional arguments for each of the commands listed above.\n\n*API/implementation*\nThe position should be added as a 0-indexed field inside the attribute in {{schema}}, for example:\n{code}\n{\n  \"name\":\"remove-node-metadata\",\n  ... help and command description ...\n  \"schema\":{\n    \"node\":{\n      \"type\":\"string\".\n      \"position\": 0\n    },\n    \"key\":{\n      \"type\":\"string\",\n      \"position\": 1\n    },\n    \"all\":{\n      \"type\":\"boolean\"\n    },\n  }\n}\n{code}\nEach attribute should have an attribute `position` that must be an integer and must be unique. Within each command, the positions must be sequential, starting at 0 (`2` not allowed without `1`).", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11645", "fixedVersions": ["RAZOR 1.2.0"], "id": "11645", "issueType": "Story", "key": "RAZOR-673", "labels": ["stability/usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-12-17T17:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow positional argument list in API for better CLI experience", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "groom request", "created": "2015-10-23T16:30:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/361.", "created": "2016-10-06T19:20:00.000000"}], "components": ["DOCS", "Server"], "created": "2015-10-22T11:38:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@782e7b4a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz3847:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Oct/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_290665915_*|*_1_*:*_1_*:*_24729090850_*|*_10007_*:*_1_*:*_77008168_*|*_3_*:*_1_*:*_12316113_*|*_5_*:*_1_*:*_920542589_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_5526318002"}], "description": "Users may need to modify the node metadata that gets assigned when a node binds to a policy. There is currently no command to perform this, so the user must work around the issue by either deleting the policy or creating a specialized hook to achieve this.\n\nA new command, `update-policy-node-metadata` should be created to handle this case.\n\nExample usage:\n{code}\nrazor update-policy-node-metadata --policy policy1 --key my_key --value my_value\n{code}\n\nOr, with positional arguments:\n\n{code}\nrazor update-policy-node-metadata policy1 my_key my_value\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11767", "fixedVersions": ["RAZOR 1.5.0"], "id": "11767", "issueType": "Story", "key": "RAZOR-672", "labels": ["docs_reviewed", "maintenance", "stability/usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-10-11T01:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add `update-policy-node-metadata` command", "timeSpent": "PT0S", "updated": "2016-10-21T17:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:79cfdf4b-b7db-45b4-904b-68a82fb46933", "body": "Seems like RAZOR-669 would be a better solution to this as it would re-use the existing installer parameters rather than doing something that is custom to razor.", "created": "2017-12-22T13:40:00.000000"}, {"author": "557058:3c7b6e34-de5c-45e8-86c5-b3529fff42e3", "body": "[~accountid:557058:79cfdf4b-b7db-45b4-904b-68a82fb46933] Yup. I'd say close this ticket as a duplicate of RAZOR-669.", "created": "2017-12-22T13:44:00.000000"}], "components": [], "created": "2015-10-15T17:33:00.000000", "creator": "557058:89652935-bbd6-4e26-afbf-0a04063f7db8", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@40768bd5"}, {"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": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2npb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Dec/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_25313094118_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_43718710188"}], "description": "A use case would be when you want to use (custom) trusted facts. \n\nFor that, you need to tell Puppet to add attributes to the CSR (see [SSL Configuration: CSR Attributes and Certificate Extensions|https://docs.puppetlabs.com/pe/latest/install_multimaster.html#step-2-install-compile-master-node]).\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11151", "fixedVersions": [], "id": "11151", "issueType": "New Feature", "key": "RAZOR-670", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:89652935-bbd6-4e26-afbf-0a04063f7db8", "resolution": "Duplicate", "resolutionDate": "2017-12-22T16:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "The puppet brokers should support adding extended attributes to the CSR ", "timeSpent": "PT0S", "updated": "2017-12-22T16:03:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "Should this be specific parameters or totally open-ended?", "created": "2016-08-03T16:58:00.000000"}, {"author": "557058:0b16fa29-44bc-4e11-82b0-a346967ad808", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I don't see any reason to restrict the arguments that a user could pass to the agent install script. Why not support a freeform string of any arguments a user wants, then they can add anything they need from the installer docs, and we don't need to continually patch in new options.", "created": "2018-03-14T11:10:00.000000"}], "components": [], "created": "2015-10-15T17:26:00.000000", "creator": "557058:89652935-bbd6-4e26-afbf-0a04063f7db8", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1333f71a"}, {"fieldName": "CS Impact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:textarea", "value": "The razor broker not supporting CSR Attributes, trusted facts, etc is a big limiter for newer workflows which rely on them for autosigning and automatic role classification after provisioning."}, {"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": "Free ?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons", "value": "Yes"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:9"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "03/Aug/16"}], "description": "The most common use case is, probably, adding extra compile masters in Puppet Enterprise.\n\nFor that, you need to configure the dns_alt_names before the agent generates the CSR.\n\nThat's usually done by adding '-s main:dns_alt_names=...' to the simplified installer command line. See [Step 2: Install Compile Master Node|https://docs.puppetlabs.com/pe/latest/install_multimaster.html#step-2-install-compile-master-node].\n\n*In Scope*\n * Add a configuration string to both brokers called installer_arguments that gets passed to the installer on the command line.\n\n*Out of Scope*\n * Variable interpolation that references Razor objects.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10993", "fixedVersions": [], "id": "10993", "issueType": "New Feature", "key": "RAZOR-669", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:89652935-bbd6-4e26-afbf-0a04063f7db8", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "The puppet brokers should allow specifying installer parameters", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:db3c8c5c-5825-4424-a788-64c2fa922e24]", "created": "2015-10-07T18:21:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "cc [~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]", "created": "2015-10-08T17:18:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "I'm okay with merging this. I'm not a fan of the tone that's created with \"for when you feel like educating yourself.\" I'd prefer, \"for when you want to learn how to use Razor.\"\n", "created": "2015-10-08T17:30:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "Some additional context is probably warranted. The PR is based on a discussion during the contributor summit about trying to do certain tasks and find explanations. The summary basically being that multiple sources confuses the reading process and having all documentation in one logical location will greatly help. It will help ensure that there is a greater chance of the documentation getting read and there won't be two different sources and it would be properly versioned.", "created": "2015-10-08T17:30:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] I will change the tone in the PR. It was not meant to be negative but fun. ", "created": "2015-10-08T17:40:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "PR has been updated to reflect a more positive tone.", "created": "2015-10-08T17:41:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Thanks [~accountid:557058:8b8ee68d-9213-4499-8e76-36a21cb10c37] -- Appreciate it.", "created": "2015-10-08T17:44:00.000000"}, {"author": "557058:db3c8c5c-5825-4424-a788-64c2fa922e24", "body": "Thanks for the PR and great to meet you at PuppetConf [~accountid:999854:f7edfcae-06cc-48dc-b324-b2bc298572c5]!", "created": "2015-10-12T10:09:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "it looks like [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] has merged. [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you update this ticket? ", "created": "2015-10-19T16:44:00.000000"}], "components": [], "created": "2015-10-07T18:16:00.000000", "creator": "623a46a94a57610068e6760c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@72312e53"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2ken:"}, {"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": "1_*:*_1_*:*_1096626094_*|*_5_*:*_1_*:*_18243426593_*|*_6_*:*_1_*:*_0"}], "description": "This ticket is a PR for re-organising the documentation. The final aim being to consolidate the wiki pages into the docs directory with a well layed out index.\nhttps://github.com/puppetlabs/razor-server/pull/321", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11150", "fixedVersions": [], "id": "11150", "issueType": "Improvement", "key": "RAZOR-668", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a46a94a57610068e6760c", "resolution": "Done", "resolutionDate": "2016-05-18T14:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Adding links to documentation", "timeSpent": "PT0S", "updated": "2016-05-18T14:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I think we may need a bit more information in the description/scope for this ticket, especially if someone other than you is going to work on it?\n\nWhat specific questions does the spike need to answer? ", "created": "2015-10-08T17:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Ticket updated.", "created": "2015-10-14T17:36:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Just to give my $.02: the reason we want to 'version' the database is so that updates to existing objects can happen safely while those objects are in use - the user would still use the old version of the object, the new version would only come into play for new uses of the object. In a way, we want persistent datastructures in our persistent store ", "created": "2015-10-19T15:22:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:6e79b811-3a3e-4713-9f4e-ef17b127b24f] interested in pairing with [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]", "created": "2015-11-13T15:17:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Bumping priority to match priority of its Epic (Critical).", "created": "2018-04-02T10:49:00.000000"}], "components": [], "created": "2015-10-02T16:40:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d7c6467"}, {"fieldName": "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": "RAZOR-383"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:8"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "08/Oct/15"}], "description": "This task is completed when the work required for this has been broken into tickets associated with this parent epic.\n\n*In Scope*\n- Which puppet resources would we need? [Minimum of policies, repos, brokers]\n- Which attributes would these resources have?\n- Which new commands will be required to facilitate idempotency of the commands behind these resources? (E.g. If a policy with name \"policy\" is created, a node binds to it, then puppet runs with a different policy with the same name, how can the install complete for the first node without affecting future nodes?)\n- How can database versioning be used to ensure that nodes bound to one policy are not broken when a new policy with the same name is created?\n- Which specific table changes will be required to handle database versioning?\n\n*Out Of Scope*\n- Creating the resources\n- Versioning the database", "epicLinkSummary": "Razor should be manageable through Puppet", "estimate": "PT0S", "externalId": "10992", "fixedVersions": [], "id": "10992", "issueType": "Task", "key": "RAZOR-666", "labels": ["stability/usability"], "originalEstimate": "PT0S", "parent": "11357", "parentSummary": "Razor should be manageable through Puppet", "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Spike to scope work for managing Razor with Puppet", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Everything in the {{tasks/}} directory is meant to be overridden by users to adapt it to their local needs. In your case, you can do the following:\n\n# Change task_path in config.yaml to {{task_path: /usr/local/razor/tasks:tasks}} (or add some other directory where you will put your custom content) With this setting, Razor will look for any task related files first in {{/usr/local/razor/tasks}} and then in its own {{tasks/}} directory\n# {{mkdir -p /usr/local/razor/tasks/common}}\n# Take the {{set_hostname.rb}} from the stock Razor {{tasks}} directory and put it into {{/usr/local/razor/tasks/common}}, then change it to work with your local needs\n\nIf you want more OS-specific changes to it, it might be best to change the tasks for the various OS's in the manner I described above by copying them to {{/usr/local/razor/tasks}} and modifying them there", "created": "2015-10-01T10:13:00.000000"}, {"author": "557058:db3c8c5c-5825-4424-a788-64c2fa922e24", "body": "[~accountid:557058:db3c8c5c-5825-4424-a788-64c2fa922e24]", "created": "2015-10-07T16:00:00.000000"}, {"author": "623a46a94a57610068e6760c", "body": "Just a quick follow up.\nWe did indeed create our own custom task to get things to work.\nHowever, it should ideally be more clear that tasks are example only and is meant to be changed. Even more importantly the tasks should if they examples conform to OS specific standards, which would mean that the above problem still stand. I really want razor to adhere to standards and not add to the wild west of software who does it what it pleases. Also if it is meant to be examples only then \"breaking\" the behaviour for existing users is a small price to pay and really they should be using custom tasks.\n\nLastly perhaps a task repository would be useful. We could easily add it to the github repo in a specific directory and add a install/download option for tasks.", "created": "2015-10-13T01:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This change seems to make sense", "created": "2018-02-12T13:46:00.000000"}], "components": [], "created": "2015-10-01T07:09:00.000000", "creator": "623a46a94a57610068e6760c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@29a861b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:7"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "01/Oct/15"}], "description": "This is probably controversial and some people might disagree but the hostname is just that. Only the hostname. The hostname + the domain name equates to the fqdn. \n\nThe problem is in /opt/razor/tasks/common/set_hostname.erb which should really set the hostname to the the shortname. \n\nCurrently it is:\necho <%= node.hostname %> > /etc/hostname\n\nbut should really be:\necho <%= node.shortname %> > /etc/hostname\n\nThe problem that we have run into is the following:\n* We have dhcp that provides domain details and accepts DNS updates to dynamically set DNS.\n* We have to set the \"hostname\" in the json file for a new policy to the fqdn for the machine in order for razor to set everything correctly. Specifically the set_hostname.erb template that sets the /etc/hosts file is important to set correctly.\n* If we don't modify the erb template as specified above then we land into a situation where the DNS update that gets generated is similar to: testhost.example.com.example.com. That happens because we have a domain details given by DHCP and the hostname is wrongly set to the fqdn value.\n\nThe problem is a bit more complicated because on CentOS the convention is to set the hostname to the fqdn. Strictly speaking this is wrong too... One solution would be to move set_hostname out of common tasks and make it more OS specific. \n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11315", "fixedVersions": [], "id": "11315", "issueType": "Bug", "key": "RAZOR-665", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a46a94a57610068e6760c", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Hostname should not be fqdn", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "623a47b8ee1b5a00702864fa", "created": "2015-10-01T05:07:00.000000", "name": "razor-el-mk-kernel-pani-hpdl180gen9.jpg", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10291"}], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "hi [~accountid:623a47b8ee1b5a00702864fa] - Unfortunately, I'm not sure if Razor was developed/tested on this specific hardware platform. I can revise this ticket to be a request to do so? ", "created": "2015-10-08T17:37:00.000000"}, {"author": "623a47b8ee1b5a00702864fa", "body": "Hi [~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c],\nYes, please revise this ticket, but I would say its less of specific hardware problem and more of the fact that it is a generic UEFI problem. Im pretty sure the same thing will happen on any hardware (HP/Dell/Others) if it boots off the Razor microkernel using PXE in UEFI mode. Unfortunately, I don't have access to non-HP hardware at the moment to test that theory out either, but I will try my best to confirm this with a non-HP UEFI system ASAP.\n\nAFAIK, for UEFI systems the kernel/initrd parameters need to be hardcoded during the kernel compile for it to work. At least thats what Ive seen while Ive been researching about this problem. And if this is true, then Im not sure whether it means that there has to be a separate kernel version for UEFI and another one for Legacy BIOSes.(??)\n\nTIA.\n\n", "created": "2015-10-09T01:23:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hi [~accountid:623a47b8ee1b5a00702864fa] \u2014 We've revisited UEFI in 1.7.x", "created": "2018-02-12T13:40:00.000000"}], "components": ["Microkernel"], "created": "2015-10-01T05:09:00.000000", "creator": "623a47b8ee1b5a00702864fa", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@56212e26"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz2gtr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "1_*:*_1_*:*_74770263473_*|*_6_*:*_1_*:*_0"}], "description": "Kernel panics with \"Cannot open root device live:/microkernel.iso\"\n\nAttached a picture ", "environment": "HP DL 360 Gen9 in UEFI PXE boot", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11426", "fixedVersions": [], "id": "11426", "issueType": "Bug", "key": "RAZOR-664", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a47b8ee1b5a00702864fa", "resolution": "Cannot Reproduce", "resolutionDate": "2018-02-12T13:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-el-mk bootup from iPXE in UEFI mode crashes", "timeSpent": "PT0S", "updated": "2018-02-12T13:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623cfdfb8d8b9c0068b93e3c", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/61.", "created": "2015-11-10T19:10:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Adding this to the sprint, since it makes sense to bundle the work with RAZOR-662. I needed to resolve both in parallel for testing.", "created": "2015-11-10T19:14:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit a1c14ec.", "created": "2015-11-16T11:09:00.000000"}], "components": ["Client"], "created": "2015-09-23T15:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@429a8659"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyo847:"}, {"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": "Bundled easily with work already in sprint."}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_650308040_*|*_1_*:*_1_*:*_2857316920_*|*_10007_*:*_1_*:*_489380644_*|*_5_*:*_1_*:*_9061789470_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_141839672_*|*_10006_*:*_1_*:*_1139189020_*|*_10005_*:*_1_*:*_169091408"}], "description": "When running `razor -k`, SSL verification is still enabled. The problem is this line, since `@verify_ssl` is set to `false`:\n{code}\n      @verify_ssl ||= (@api_url.hostname != 'localhost')\n{code}\n\n*In Scope*\n* Honor -k flag and set verify SSL to false when it's specified ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10990", "fixedVersions": ["RAZOR 1.2.0"], "id": "10990", "issueType": "Bug", "key": "RAZOR-661", "labels": ["stability/usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-25T15:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Fix SSL (-k flag) for razor-client", "timeSpent": "PT0S", "updated": "2016-03-09T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:97578a32-3955-4c5c-939e-58a878437b49", "body": "For reference and/or verification of issues building  resolved, this is a temporary (not guaranteed to last forever) link to the microkernel I built from CentOS 7 1503 for VMworld. This microkernel was built using https://github.com/puppetlabs/razor-el-mk on September 1, 2015, and does not have the two-minute boot delay.\n\nhttps://s3-us-west-2.amazonaws.com/tseteam/temp/microkernel-005-1-g8968dde.tar.gz", "created": "2015-09-08T11:02:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "Fixed, see linked ticket.", "created": "2016-03-30T17:45:00.000000"}], "components": [], "created": "2015-08-31T16:57: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@563925a0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1xtb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_18319705465_*|*_6_*:*_1_*:*_0"}], "description": "The current microkernel exhibits a bug in certain circumstances (example: booting a VMware Fusion VM) wherein the microkernel will hang very early in the boot process for two minutes. After two minutes systemd will print error messages about cycle problems, and boot will resume.\n\nIn a microkernel built from CentOS 7 1503 (the March 2015 release of CentOS 7), this issue is resolved. No boot delay, and no systemd errors. Presumably, this second release of CentOS 7 contains numerous bug fixes, including fixes for whichever bugs cause the slow boot and boot errors in our current microkernel.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11084", "fixedVersions": [], "id": "11084", "issueType": "Bug", "key": "RAZOR-660", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:97578a32-3955-4c5c-939e-58a878437b49", "resolution": "Duplicate", "resolutionDate": "2016-03-30T17:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Rebase microkernel to CentOS 7 1503", "timeSpent": "PT0S", "updated": "2016-03-30T17:45:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "created": "2015-08-24T10:17:00.000000", "name": "20150824_084143.jpeg", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10240"}, {"attacher": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "created": "2015-08-24T10:17:00.000000", "name": "20150824_085956.jpeg", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10250"}, {"attacher": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "created": "2015-08-24T10:17:00.000000", "name": "20150824_090944.jpeg", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10261"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Addressed in [this mailing list thread|https://groups.google.com/forum/#!topic/puppet-razor/sWkoWbGAWC8].", "created": "2015-08-27T22:10:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user If the reply in the mailing list thread is insufficient, feel free to open an issue to create an Ubuntu Desktop task (or supply one via a pull request) or if that wasn't the issue, reopen this ticket. For now though, I'll close this given the explanation there.", "created": "2015-08-31T23:49:00.000000"}], "components": ["Server"], "created": "2015-08-24T10:18:00.000000", "creator": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@774ae874"}, {"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": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1tjb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "28/Aug/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_653500894_*|*_6_*:*_1_*:*_0"}], "description": "When the client can't find the repo for some reason. Can I get help with this issue. \nhttp://imgur.com/xUTU0lP\nhttp://imgur.com/zX5QCAI\n\n\nThanks,", "environment": "Razor Server version: v1.0.1-16-g0e53abd\nRazor Client version: v1.0.0-1-gf3ebc39", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11081", "fixedVersions": [], "id": "11081", "issueType": "Task", "key": "RAZOR-657", "labels": ["support"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "resolution": "Won't Do", "resolutionDate": "2015-08-31T23:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "No such file or directory (http://ipxe.org/2d0c613b)", "timeSpent": "PT0S", "updated": "2015-08-31T23:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "14400", "aggregatetimeoriginalestimate": "14400", "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Looks good to me.", "created": "2016-04-13T16:54:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Fixed in Burnside and later.", "created": "2016-04-13T17:08:00.000000"}], "components": ["DOCS"], "created": "2015-08-07T15:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@61cf1cb6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1h6v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Apr/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_15039289586_*|*_10007_*:*_1_*:*_793023_*|*_10009_*:*_1_*:*_1581087_*|*_5_*:*_1_*:*_3014563407_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_6565682301"}], "description": "The [broker page|https://docs.puppetlabs.com/pe/latest/razor_brokertypes.html] is currently very Linux-centric. The same principles on that page apply, but here are some things which would improve the page:\n\n- In the top section [here|https://docs.puppetlabs.com/pe/latest/razor_brokertypes.html#create-a-new-broker-type], add a line that says e.g. \"On Windows machines, the file should be a Powershell template called `install.ps1.erb`.\n- Replace \"In the `install.erb` template\" with \"In the `install.erb` or `install.ps1.erb` template\"\n- Modify this paragraph:\n{noformat}\nThe broker install script is generated from the install.erb template of your broker. It should return a valid shell script because tasks generally perform the handoff to the broker by running a command like, curl -s <%= broker_install_url %> | /bin/bash. The server makes sure that the GET request to broker_install_url returns the broker\u2019s install script after interpolating the template.\n{noformat}\nTo read:\n{noformat}\nThe broker install script is generated from the install.erb template of your broker. It should return a valid shell script because tasks generally perform the handoff to the broker by running a command like, curl -s <%= broker_install_url %> | /bin/bash. The server makes sure that the GET request to broker_install_url returns the broker\u2019s install script after interpolating the template. For Windows machines, the `broker_install_url` command should read `broker_install_url('install.ps1')`.\n{noformat}\n", "epicLinkSummary": null, "estimate": "PT14400S", "externalId": "11934", "fixedVersions": [], "id": "11934", "issueType": "Task", "key": "RAZOR-654", "labels": [], "originalEstimate": "PT14400S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Windows broker type info", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "removed story points so this can be groomed by team ", "created": "2015-12-22T13:32:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you review and confirm this has enough detail for team to take action? ", "created": "2015-12-22T13:33:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Looks good", "created": "2015-12-22T17:59:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Awesome, thanks! Do you think there's a more accurate title we could use for this ticket now that we've settled on scope? ", "created": "2015-12-23T09:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Updated both tickets to spell out the difference between the two.", "created": "2015-12-23T19:57:00.000000"}, {"author": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], I'd like to break this ticket down further into 1) a ticket for adding the i18n library, and 2) a ticket for wrapping functions around the string. Are you okay if I do this and then we repoint?", "created": "2016-05-02T15:50:00.000000"}, {"author": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], I narrowed down the scope of this ticket to be only about wrapping the string externalization function around strings. Do you want to revise the 5 point estimate?", "created": "2016-05-03T17:39:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Added to grooming to be re-estimated.", "created": "2016-05-05T10:55:00.000000"}, {"author": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "body": "[~accountid:557058:3bbf1c83-df0e-4372-887d-cfc38dee9330] I added the platform team to this ticket. Is that where Razor lives now?", "created": "2016-10-31T14:04:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "[~accountid:557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709], Razor does not live with the Agent and Platform Team. I think [~accountid:557058:a575383d-42ee-427e-9445-514f5f8909b2] might be able to help? ", "created": "2016-10-31T15:47:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "[~accountid:557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709], I think [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is the best point of contact for Razor. ", "created": "2016-10-31T16:02:00.000000"}], "components": ["Client"], "created": "2015-08-07T11:29:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b08f28e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hympgv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Dec/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_887865403_*|*_10007_*:*_1_*:*_84563088_*|*_5_*:*_1_*:*_3647427268_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_18872176_*|*_10006_*:*_1_*:*_9139596642_*|*_10005_*:*_3_*:*_36355209966"}], "description": "The Razor server already uses {{fast_gettext}} to wrap error messages produced so they can be translated to a proper language for the client. Some error messages the user sees in the client are generated directly by the client. For that reason, the same {{fast_gettext}} implementation should be used in the client.\n\n*In Scope*\n* Wrap human-readable error messages generated on the client in calls to {{fast_gettext}}\n\n*Out of Scope*\n* Read the locale in the user's environment to determine how to translate the error messages. (RAZOR-767)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11933", "fixedVersions": ["RAZOR 1.6.1"], "id": "11933", "issueType": "Task", "key": "RAZOR-653", "labels": ["i18n", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Internationalize Razor client error messages", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/71.", "created": "2017-01-04T19:33:00.000000"}], "components": ["Client"], "created": "2015-08-07T11:28:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@14041d4c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynvcv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "05/Jan/17"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_887948782_*|*_10007_*:*_1_*:*_1783765431_*|*_5_*:*_1_*:*_3734830464_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_32749459002_*|*_10005_*:*_1_*:*_10977614070"}], "description": "When the Razor client makes a request to the API, it needs to set the Accept-Language header. It should be set to whatever locale the user has set in their environment.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11763", "fixedVersions": ["RAZOR 1.6.1"], "id": "11763", "issueType": "Task", "key": "RAZOR-652", "labels": ["maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Done", "resolutionDate": "2017-03-09T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor client needs to set Accept-Language header", "timeSpent": "PT0S", "updated": "2017-03-09T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "2 dev story points", "created": "2015-08-19T14:50:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] do you think you could add an in scope section to the description outlining what needs to be done on this ticket? ", "created": "2016-01-19T13:59:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Done.", "created": "2016-01-19T14:41:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "thanks [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]!", "created": "2016-01-19T18:08:00.000000"}, {"author": "557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709", "body": "This issue will be resolved when we pull the Ruby i18n gem into Razor Server (RAZOR-857)", "created": "2016-05-03T17:08:00.000000"}], "components": ["Server"], "created": "2015-08-07T11:13:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7bf43ebc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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": "resource limitations"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hym58n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "19/Aug/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_58608278_*|*_1_*:*_1_*:*_888866530_*|*_3_*:*_1_*:*_466912279_*|*_5_*:*_1_*:*_27832326463_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_38843638688_*|*_10005_*:*_1_*:*_10977626839"}], "description": "When the Razor server receives a request from the API, it needs to determine the most appropriate locale based on the user's wishes expressed in the Accept-Language header and the available locales in {{locales/}} so that any human-readable messages in the response can be properly translated by fast_gettext.\n\nAFAICT, all the plumbing to do the translating are in the code already, we are just missing the code to actually tell fast_gettext what locale to use based on the user's request.\n\n*In Scope*\n- Read the client's locale preference ({{Accept-Language}} header) in all requests\n- Use this locale to look up {{gettext}} translations for messages, if any exist yet.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11313", "fixedVersions": ["RAZOR 1.7.0"], "id": "11313", "issueType": "Task", "key": "RAZOR-651", "labels": ["i18n", "maintenance"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2017-03-22T11:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor server needs to perform locale negotiation", "timeSpent": "PT0S", "updated": "2018-02-07T13:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "86400", "aggregatetimeoriginalestimate": "86400", "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [], "components": ["DOCS"], "created": "2015-08-06T13:21:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6bc7c69b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymphb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_2231305340_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_16955526483"}], "description": "The PE Razor documentation currently only lists security information for using custom SSL certificates. It would be highly helpful for users if this documentation included information about how Shiro works with regard to limiting access to sensitive data.\n\n[The page|https://docs.puppetlabs.com/pe/latest/razor_secure_apis.html] should be split into two sections:\n- Shiro first, modeling the information after the [FOSS documentation|https://github.com/puppetlabs/razor-server/wiki/Securing-the-server].\n- Current SSL information second.\n\nThis change can be retroactive for past releases, as well.", "epicLinkSummary": null, "estimate": "PT86400S", "externalId": "11147", "fixedVersions": [], "id": "11147", "issueType": "Task", "key": "RAZOR-650", "labels": [], "originalEstimate": "PT86400S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Duplicate", "resolutionDate": "2016-03-15T15:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - Shiro authorization information", "timeSpent": "PT0S", "updated": "2016-10-19T15:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] thoughts? this seems odd, or is it expected?", "created": "2015-08-12T10:37:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Yes, that does seem odd. If the tag changes are made with update-tag-rule, the actual reevaluation of the tag against nodes happens in the background, not synchronously with the update-tag-rule command.\n\nSo depending on how quickly you run 'razor tags' after running 'razor update-tag-rule', you will see different results.\n\nIt would be good to retry the above with longish pauses between updating a tag and looking what it matches.\n\nFrom a UX point of view, we might want to think about communicating to the user that a tag is in the process of being updated (that would require an additional field on the tag in the DB)", "created": "2015-08-12T11:11:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This looks like expected behavior, since tag matching happens asynchronously. We could add a message to the user that the tag is being updated in the background, but given the age of this ticket, we'll close this for now.", "created": "2018-02-12T13:37:00.000000"}], "components": [], "created": "2015-08-05T13:20:00.000000", "creator": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@28c7993d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1fq7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Aug/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_79665372779_*|*_4_*:*_1_*:*_60457_*|*_6_*:*_1_*:*_0"}], "description": "In speaking with Scott, he was expecting a node to match across all tags, regardless of whether they had a policy assigned to the tag or not.  Instead what I am seeing is that each node is evaluated against the list of tags, and when it finds a match, it stops, leaving any subsequent tags in whatever state they were in previously (if they were already matching the node, it will still say they match, if they were not matching, it will still say they're not matching. All new tags will say they don't match a node, even if the rule should match. So, a more visual representation of what is going on:\n\ngiven:\nnode1\ntag1, tag2\npolicy1\n\nwhen:\nnode1 matches tag1\nand node1 does not match tag2\nand tag1 is assigned to policy1\n\nthen:\nrazor tags shows that tag1 has a node match and tag2 does not have a node match\n\nwhen:\ntag2 is updated to now match node1\n\nthen:\nrazor tags shows that tag1 has a node match, and tag2 does NOT show that it has a node match.\n\nwhen:\nYou add a new tag that matches the node\n\nthen:\nrazor tags still shows that only tag1 has a node match\n\nwhen:\nyou remove the policy associated with tag1\n\nthen:\nrazor tags shows that all 3 tags now have a match\n\nwhen:\nyou add a policy to tag1 again\n\nthen:\nrazor tags now shows that all 3 tags have a match still\n\nwhen:\nyou modify tag2 to no longer match node1\n\nthen: razor tags still shows that all 3 tags match a node.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11761", "fixedVersions": [], "id": "11761", "issueType": "Bug", "key": "RAZOR-649", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "resolution": "Won't Fix", "resolutionDate": "2018-02-12T13:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Unexpected behavior when node matches a tag with an associated policy", "timeSpent": "PT0S", "updated": "2018-02-12T13:37:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is this expected behavior? ", "created": "2015-08-12T10:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This seems like a valid issue. I would expect updating the tag's rule to update on all nodes (perhaps asynchronously) without needing any reboots.", "created": "2015-12-22T18:53:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0] Can you verify that RAZOR-644 was included in your testing environment? I suspect what happened is that the VM was paused, the background processes died, and without RAZOR-644 in the build, the async process to update all previously matching nodes didn't occur.", "created": "2016-01-20T23:14:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing due to inactivity. If this is still an issue, please file another ticket.", "created": "2018-03-13T22:52:00.000000"}], "components": ["Client"], "created": "2015-08-05T09:22:00.000000", "creator": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7fa52d83"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynv1z:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "12/Aug/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7110669689_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_13369758321_*|*_10006_*:*_1_*:*_59213311332_*|*_10005_*:*_1_*:*_2521256293"}], "description": "After executing update-tag-rule all previously matching nodes still show as matching until the nodes are rebooted.\n\nExpected:\nAfter executing update-tag-rule, all nodes should be removed from that tag until they re-run.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11612", "fixedVersions": [], "id": "11612", "issueType": "Bug", "key": "RAZOR-648", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "resolution": "Cannot Reproduce", "resolutionDate": "2018-03-13T22:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "After executing update-tag-rule all previously matching nodes still show as matching until the nodes are rebooted.", "timeSpent": "PT0S", "updated": "2018-03-13T22:52:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "This behavior is fully intentional: if the fact isn't there, it's highly likely that that is a mistake on the part of the user, and continuing to evaluate rules would simply lead to behavior that the user hadn't intended. IOW, if the user adds the rule\n\n{code}\n[\"=\", [\"fact\", \"macadress\"], \"00:0c:29:51:d9:f6\"]\n{code}\n\nwe shouldn't try and be smart about that typo", "created": "2015-09-08T11:58:00.000000"}, {"author": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "body": "Hmm, I guess my concern is that by not continuing to evaluate any subsequent tag rules, that is also unintended behavior.  You end up matching on a few of the tags, and the rest are ignored, depending on the order the tag rules were entered.  You can look in the node log and see that there was an error, but the error doesn't give much indication of what went wrong and how to fix it. Perhaps the behavior is correct, but we could provide a more meaningful error message? ", "created": "2015-09-15T13:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This looks like proper behavior, we'll accept a pull request if a more descriptive error message is needed.\u00a0", "created": "2018-02-12T13:34:00.000000"}], "components": ["Server"], "created": "2015-08-04T17:29:00.000000", "creator": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@371f70e0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1f2v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_79736692356_*|*_6_*:*_1_*:*_0"}], "description": "* Add a tag where the fact does not exist, such as:\n  razor create-tag --name test --rule '[\"=\", [\"fact\", \"foo\"], \"bar\"]'\n* Add a second tag that actually matches a node like:\n  razor create-tag --name test --rule '[\"=\", [\"fact\", \"macaddress\"], \"00:0c:29:51:d9:f6\"]'\n* Boot the matching node\n* Execute razor tags, you will see that neither tag has a matching node.  \n* Execute 'razor nodes node1 --full log'\n\nResult:\nThere is an error in the log that is repeated 10 times, which apparently prevents any subsequent tag rules from being evaluated. \n\nExpected:\nIf a fact (or any other identifier) specified by a tag rule is not found, it should continue to evaluate any subsequent tag rules.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11758", "fixedVersions": [], "id": "11758", "issueType": "Bug", "key": "RAZOR-647", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "resolution": "Won't Fix", "resolutionDate": "2018-02-12T13:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "If a Razor tag rule references a fact that does not exist, an error occurs and no subsequent tag rules are evaluated.", "timeSpent": "PT0S", "updated": "2018-02-12T13:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/314.\n\nFixed in razor-server commit 695f51d.", "created": "2015-07-22T12:02:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is this still ready for ci? \n", "created": "2015-08-06T18:00:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "ping [~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0] as fyi - issue in current sprint", "created": "2015-08-26T17:19:00.000000"}], "components": ["Server"], "created": "2015-07-21T14:41:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@e43f80f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyoxmn:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "07/Aug/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1320137146_*|*_1_*:*_1_*:*_76821889_*|*_5_*:*_1_*:*_6493420266_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2312141252"}], "description": "The noop broker currently calls absent functions, leading to noop broker execution failure, meaning the completion log entry is not being added.\n\nCommunity PR [already submitted|https://github.com/puppetlabs/razor-server/pull/314].", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11146", "fixedVersions": ["RAZOR 1.1.0"], "id": "11146", "issueType": "Bug", "key": "RAZOR-645", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-09-02T12:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Noop broker calls absent functions", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623cfdfb8d8b9c0068b93e3c", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked in FOSS by https://github.com/puppetlabs/razor-torquebox/pull/8.", "created": "2015-07-20T16:46:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-torquebox commit 773d8aa.", "created": "2015-09-02T10:55:00.000000"}], "components": ["Server"], "created": "2015-07-20T13:53:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7dd5e106"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyoxm7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_15549149_*|*_1_*:*_1_*:*_10392040_*|*_10007_*:*_1_*:*_3780516317_*|*_5_*:*_1_*:*_6479747286_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_5581399"}], "description": "When the server's time jumps by a large amount (e.g., by pausing the VM running the server for several hours) the HornetQ server dies and no attempt is made to restart it. This leads, amongst other things, to pending create-repo requests to never finish. The only remediation right now is to restart the Razor server.\n\nThe first error to appear is this:\n\n{code}\n21:47:38,316 WARN  [org.hornetq.core.client] (hornetq-failure-check-thread) HQ212037: Connection failure has been detected: HQ119014: Did not receive data from invm:0. It is likely the client has exited or crashed without closing its connection, or the network between the server and client has failed. You also might have configured connection-ttl and client-failure-check-period incorrectly. Please check user manual for more information. The connection will now be closed. [code=CONNECTION_TIMEDOUT]\n{code}\n\nIt looks like https://github.com/puppetlabs/razor-torquebox/pull/1, which was the PR to fix this original issue, was never merged.\n\nThis affects the usability of things like the pe-razor-vagrant-stack.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11488", "fixedVersions": ["RAZOR 1.1.0"], "id": "11488", "issueType": "Bug", "key": "RAZOR-644", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-09-02T16:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "HornetQ message queue consumer dies on VM pause", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Dev estimate: 1 story point.", "created": "2015-07-16T11:27:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "If there's any doc impact, it would likely just be a note, so it would be a 1.", "created": "2015-07-22T12:38:00.000000"}, {"author": "557058:5c808afb-dce6-44a1-922d-296dc2c81fe8", "body": "[~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0] Can you confirm 1 point is okay for QA on this?", "created": "2015-07-22T16:00:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/318.", "created": "2015-08-05T03:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit a4e5915.", "created": "2015-08-26T10:49:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "ping [~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0] as fyi - issue in current sprint", "created": "2015-08-26T17:19:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Added a DOCS component, /cc [~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]. It would be very helpful if our docs included this information about node metadata:\n\nNode metadata can be updated in three ways:\n- The `update-node-metadata` and `modify-node-metadata` commands\n- The \"node_metadata\" property on a policy bound to a given node\n- A hook that runs an event associated with a given node.", "created": "2015-09-02T14:50:00.000000"}], "components": ["DOCS"], "created": "2015-07-16T11:05:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6be7cb37"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyoxmf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1699123641_*|*_10007_*:*_1_*:*_1842349394_*|*_5_*:*_1_*:*_6485435313_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_620576871"}], "description": "To increase the flexibility of the stock tasks, each stock task should look for the node metadata item \"hostname\" before falling back to the current \"node.hostname\" value:\n{code}\n<%= node.metadata['hostname'] || node.hostname %>\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11487", "fixedVersions": ["RAZOR 1.1.0"], "id": "11487", "issueType": "Story", "key": "RAZOR-643", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-09-02T15:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Use \"hostname\" node metadata in stock tasks", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Dev estimate: 3 story points.", "created": "2015-07-16T11:26:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Docs story point: 3", "created": "2015-07-22T12:39:00.000000"}, {"author": "557058:5c808afb-dce6-44a1-922d-296dc2c81fe8", "body": "[~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0] confirm 3 points is okay for QA?", "created": "2015-07-22T16:02:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/318.", "created": "2015-08-05T03:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 78e0b7d.", "created": "2015-08-26T10:59:00.000000"}], "components": ["Server"], "created": "2015-07-16T11:03:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2de5e1c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyoxhz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "22/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_536334538_*|*_10007_*:*_1_*:*_1842921503_*|*_5_*:*_1_*:*_4847127823_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2258331919_*|*_10006_*:*_1_*:*_1162882104"}], "description": "Many users have asked how to achieve more advanced dynamic hostnames than the simple incremented pattern (`$\\{id\\}.example.com`) from the \"hostname\" property on a policy. The guidance in this case is to create a hook that will calculate the correct hostname and return that as metadata on the task.\n\nThe sample hook type should:\n- Be called something like \"assign-dedicated-hostname.hook\"\n- Use either bash+jq (like sample hook-type counter.hook) or system Ruby; this is likely too complex to maintain in bash\n- Be instantiated with several optional configuration options for:\n-- policy# (e.g. policy1=centos, policy2=ubuntu, ...)\n-- hostname-pattern# (e.g. hostname-pattern1=centos$\\{count\\}.example.com, ...)\n-- counter# (e.g. counter1=0, etc.)\n-- Allow up to 5 policy + hostname pairings\n- Default to hostname-pattern#=policy#.example.com\n- Interpolate $\\{count\\} as the \"counter\" identifier in the hostname-pattern\n- Ignore any policies that are not included in the policy# list, possibly outputting a debug message.\n- Return the node's \"hostname\" metadata value\n- Update the hook configuration's \"counter#\" value for the correct policy#", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11424", "fixedVersions": ["RAZOR 1.1.0"], "id": "11424", "issueType": "Story", "key": "RAZOR-642", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-09-21T14:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create sample hook for dedicated hostnames", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Note in backlog grooming - this should have a test plan identified before implementation begins", "created": "2016-02-03T15:09:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Increased priority to \"Critical\" since this is needed for later versions of Facter, and strikes me as a papercut that's just going to grow.", "created": "2018-03-09T19:40:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Decreasing priority of this ticket to Normal since the minimum needed functionality will be included in RAZOR-1110.", "created": "2019-07-09T17:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The rest of this work doesn't seem as important now that some structured access is included per RAZOR-1110.", "created": "2019-12-02T20:40:00.000000"}], "components": ["DOCS", "Server"], "created": "2015-07-10T15:41:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@8ff6350"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:6"}, {"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": "19/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_15559251244_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_157443031_*|*_10006_*:*_1_*:*_120807151504_*|*_10005_*:*_3_*:*_2256121455"}], "description": "The matcher currently throws errors when a \"fact\" or \"metadata\" expression evaluates to an array. In order to handle these, we will need some sort of operator that can scope into arrays and objects.\n\nThe larger move here may be away from the AST-style syntax to more of a query syntax.\n\n*In Scope*\nAdd some special matching operators for arrays and hashes.\n|| Function || Arguments || Description || Datatype input || Datatype output ||\n| length | {{array}} | Determine the length of an array | array | integer |\n| empty | {{array}} | Return whether an array is empty ([] or null) | array | boolean |\n| in | {{array}}, {{val}}... | Return whether the array contains a value that matches the remaining elements | array | boolean |\n| length | {{hash}} | Determine the length (number of elements) of a hash | hash | integer |\n| empty | {{hash}} | Return whether a hash is empty ({} or null) | hash | boolean |\n| get | {{hash}}, {{string}}, \\[{{string}}\\] | Return the value of the given key in the hash, falling back to the default | hash | any |\n{code:title=`get` example tag}\n[\"=\", \"x86_64\", [\"get\", [\"fact\", \"os\"], \"architecture\", \"no-architecture-included\"]]\n{code}\n{code:title=`facter os` output}\n$ facter os\n{\n  architecture => \"x86_64\",\n  ...\n}\n{code}\nThis would apply the tag to the given node.\n\n*In Scope*\n* Implement the above functions in the matcher language.\n* This should have a test plan identified and associated", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11145", "fixedVersions": [], "id": "11145", "issueType": "Story", "key": "RAZOR-641", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2019-12-02T20:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add matcher functions for structured facts and metadata", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:0fb5c51c-0247-4c94-976b-90dbde5bc617", "body": "Looks like this issue was applied https://github.com/puppetlabs/razor-server/commit/724ea178d93ce2b2d2c83092b879ecbac975a98f", "created": "2015-10-29T09:52:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] was this issue resolved out of band? ", "created": "2015-12-22T14:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Yes, this has been resolved in FOSS.", "created": "2015-12-22T16:15:00.000000"}], "components": [], "created": "2015-07-09T17:54:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@413af3ce"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0yun:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Oct/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_63466009_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_7853558_*|*_10005_*:*_1_*:*_14268763064"}], "description": "We have several environment variables with potentially too generic names:\nHTTP_PORT\nHTTPS_PORT\n\nThese should be modified to disambiguate in all cases to:\nRAZOR_HTTP_PORT\nRAZOR_HTTPS_PORT", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11611", "fixedVersions": ["RAZOR 1.1.0"], "id": "11611", "issueType": "Task", "key": "RAZOR-640", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-12-22T16:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Rename HTTP_PORT to RAZOR_HTTP_PORT", "timeSpent": "PT0S", "updated": "2015-12-22T16:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/312.", "created": "2015-07-08T17:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit f8e02bd.", "created": "2015-07-10T16:20:00.000000"}], "components": ["Server"], "created": "2015-07-08T17:31:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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 user can install Windows 2008R2 Standard using Razor."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@27ead4fe"}, {"fieldName": "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": "RAZOR-354"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyojzz:"}, {"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": "High priority ticket unblocked by completion of investigation work"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_237070106_*|*_1_*:*_1_*:*_1113719_*|*_10007_*:*_1_*:*_167429719_*|*_5_*:*_1_*:*_8298779912_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2611114079"}], "description": "This ticket tracks development work on Windows 2008R2. It requires:\n\n- build-razor-winpe.ps1 modifications\n- Task files\n- Documentation to track prerequisites/user action", "epicLinkSummary": "Support Installation of Windows 2008r2", "estimate": "PT0S", "externalId": "11144", "fixedVersions": ["RAZOR 1.1.0"], "id": "11144", "issueType": "Story", "key": "RAZOR-639", "labels": [], "originalEstimate": "PT0S", "parent": "11353", "parentSummary": "Support Installation of Windows 2008r2", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-08-12T15:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Develop task for Windows 2008 R2", "timeSpent": "PT0S", "updated": "2016-03-02T01:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/310.", "created": "2015-07-08T17:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 594ace8.", "created": "2015-07-10T16:31:00.000000"}], "components": ["Server"], "created": "2015-07-08T14:41:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2f58806e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyojzr:"}, {"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": "High priority issue found (and fixed) while working on other ticket"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_236438054_*|*_1_*:*_1_*:*_11219865_*|*_10007_*:*_1_*:*_168169339_*|*_5_*:*_1_*:*_8892358437_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2017538855"}], "description": "Tasks created in the database via `create-task` deserialize the node's boot_count for matching as a string. This means that when comparing the actual integer of the node's boot_count to the template values, the stage always results in the default stage.\n\nThis is due to a serialization error in the Sequel JSON plugin where all keys are stored as strings. The fix is to override the deserialization method for tasks.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11756", "fixedVersions": ["RAZOR 1.1.0"], "id": "11756", "issueType": "Bug", "key": "RAZOR-638", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-08-05T18:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Database tasks not finding correct boot stage", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2015-07-06T19:32: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@6713f0c3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hz0vaf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_580361397_*|*_10009_*:*_1_*:*_63670100_*|*_5_*:*_1_*:*_8920547899_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1916498820"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11096", "fixedVersions": ["RAZOR 1.1.0"], "id": "11096", "issueType": "Sub-task", "key": "RAZOR-637", "labels": [], "originalEstimate": "PT0S", "parent": "11189", "parentSummary": "Add ability to match on a range of MAC adddresses", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2015-08-05T10:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "QA for Add ability to match on a range of MAC adddresses", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0b64866b810069e43480", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I think this functionality could be achieved via a hook script. The counter would be maintained in the hook's configuration, and the script would return what the node's hostname should be as node metadata. Here's an example of the syntax that a hook script should return:\n\nhttps://github.com/puppetlabs/razor-server/blob/master/hooks/counter.hook/node-bound-to-policy\n\nYou'd have two different hook configs, one for 'web' and one for 'app', e.g. Then inside the script, you'd have a conditional on the node's policy which determines which returns two things:\n- The node's hostname in the proper format, e.g. DC1Web + $web (0-padding would happen here)\n- The hook configuration to use for the next node, e.g. $web + 1\n\nUpdate: Just a clarification, several tasks reference `node.metadata\\['hostname'\\]` to set the node's hostname. This would need to be a feature of whichever task the user requires.\n\nUpdate: More information on hooks can be found [in the documentation|https://github.com/puppetlabs/razor-server/blob/master/doc/hooks.md].", "created": "2015-07-06T13:05:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:623c0b64866b810069e43480] can you confirm [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]'s workaround covers your use case? ", "created": "2015-07-10T11:37:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "Assuming the proposed solution is adequate based on lack of activity.\n", "created": "2016-03-30T17:36:00.000000"}], "components": [], "created": "2015-07-06T12:29: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@3f66fb80"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz0uof:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_342439284_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_22831152075"}], "description": "Razor could maintain like a counter file and some fixed hostnames that each policy can look into and start assigning the names before the max count is reached.\n\nThis would allow for something that references the policies policies for different server roles with ranges like this:\n\nWeb : DC1Web001.<domainname> to DC1Web015.<domainname> \nApp : DC1App001.<domainname> to DC1App015.<domainname>", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11310", "fixedVersions": [], "id": "11310", "issueType": "New Feature", "key": "RAZOR-636", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c0b64866b810069e43480", "resolution": "Fixed", "resolutionDate": "2016-03-30T17:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow for node hostname numbering based on a file or set of hostname rules", "timeSpent": "PT0S", "updated": "2016-03-30T17:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Investigation complete, path forward found.", "created": "2015-07-08T17:26:00.000000"}], "components": [], "created": "2015-07-01T15:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3b7e7fb0"}, {"fieldName": "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": "RAZOR-354"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hz0swf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_610217244_*|*_5_*:*_1_*:*_11315820232_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": "Support Installation of Windows 2008r2", "estimate": "PT0S", "externalId": "11752", "fixedVersions": ["RAZOR 1.1.0"], "id": "11752", "issueType": "Task", "key": "RAZOR-635", "labels": [], "originalEstimate": "PT0S", "parent": "11353", "parentSummary": "Support Installation of Windows 2008r2", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-07-08T17:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Investigate alternative solutions for 2008r2", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] could you provide a little more context on this issue? \n\nDoes this mean Razor is currently incapable of installing Fedora 20? \n\nDo we need to make similar code changes whenever a new OS is released? ", "created": "2015-10-27T14:05:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] That is correct", "created": "2015-10-27T16:56:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] got it. I think for this ticket then what we might need is to break it up into work required for supporting broker hand off to any specific operating system we wish to support, so that we can prioritize then distinctly. Can you make those tickets? Let me know how I can help. ", "created": "2015-10-27T17:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] The work is really trivial. I put up a PR changing those few lines. Since this is FOSS-only, there is no docs or QA impact, so we can merge it and call this ticket good.", "created": "2015-10-27T18:04:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] removing compatibility for setting up an operating system might be considered an API break in some circles. I propose we may need to consider what release we are targeting the removal for, and communicate to the community in advance that this will be happening. Release Engineering should have a heads up also. ", "created": "2015-10-27T18:36:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "After chatting with Release Engineering, we actually announced the removal of those EOL platforms and removed them already, so it should probably be fine to go ahead with this. As such, as you pointed out, [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], those URLs have been broken already.", "created": "2015-10-27T19:10:00.000000"}], "components": ["Server"], "created": "2015-06-25T12:30:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@711fcbcc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyox4n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "1_*:*_2_*:*_10721735109_*|*_10007_*:*_1_*:*_629635082_*|*_5_*:*_1_*:*_1093474002_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_11918150"}], "description": "The FOSS \"puppet\" broker has grown out of date. For example, its URLs can only install RHEL 5-6 and Fedora 17-19. Links should be added (or a more generic method adopted) to accommodate more modern installs.\n\nThe broker also does not handle architectures that are not i386. Adding support for x86_64 would be great.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11486", "fixedVersions": ["RAZOR 1.1.0"], "id": "11486", "issueType": "Story", "key": "RAZOR-632", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-11-03T23:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Modernize `puppet` broker URLs", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Link to [email thread|https://groups.google.com/forum/#!topic/puppet-razor/bXGosqI-zg8].", "created": "2015-06-24T11:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/313.", "created": "2015-07-09T18:09:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 435e228.", "created": "2015-07-10T16:39:00.000000"}], "components": ["Server"], "created": "2015-06-12T18:54:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4a8a5017"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hz0swn:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_235934246_*|*_1_*:*_1_*:*_1024892886_*|*_10007_*:*_1_*:*_80980928_*|*_5_*:*_1_*:*_10907484136_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2415376_*|*_10006_*:*_1_*:*_1305208417"}], "description": "When the user installs the packages for razor-server, razor-torquebox sets down the default JBoss files. This has been fine, but lately results in this error:\n\n{noformat}\nJBAS014688: Wrong type for port. Expected [EXPRESSION, INT] but was STRING\n{noformat}\n\nThis is because the default standalone.xml has a problematic:\n\n{code}\n'${http.port:8080}'\n{code}\nwhich is now returning a string instead of an integer.\n\nTwo options for fixing this:\n- Manage this file in razor-torquebox\n- Add the HTTP_PORT variable, which is used in systemd's .service file, to the .env file", "environment": "EL 7", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11610", "fixedVersions": ["RAZOR 1.1.0"], "id": "11610", "issueType": "Bug", "key": "RAZOR-629", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-07-13T10:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "\"Wrong type for port\" error", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:fba4c131-aa30-4295-a1e1-8b3f9398190b", "body": "I can provide what we setup to have dnsmasq working with DHCP proxy on RHEL6.5, if it would be helpful.", "created": "2015-08-10T11:42:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:fba4c131-aa30-4295-a1e1-8b3f9398190b] I think that would definitely be helpful ", "created": "2015-10-27T14:46:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "RAZOR-745 also filed to address shortcomings in dnsmasq documentation ", "created": "2015-12-22T18:02:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "added as a requirement to RAZOR-745", "created": "2016-01-06T16:45:00.000000"}], "components": ["DOCS"], "created": "2015-06-11T13:58:00.000000", "creator": "557058:e38f5450-6788-4b1d-b329-524ce00d94e6", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7f18a185"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz11wv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Aug/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_3111997761_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_14959192195"}], "description": "Customer had to go through a lot of effort to setup dnsmasq with Razor.\n\nFor the documentation, I just thought it might be nice to have more examples with dnsmasq - I'm sure there are other Enterprise customers who are in an environment that already has a dhcp server and thus need to work with dhcp proxy. It took a lot of digging and guessing for me to get to a point that works, especially since the RHEL6 version of dnsmasq is fairly old. So definitely more detailed, but I guess covering more scenarios (definitely dhcp proxy, maybe some details for people who have RHEL7's version of dnsmasq would be nice) versus additional parameters (you may have meant the same thing - just being clear).", "environment": "PE 3.8.0", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11421", "fixedVersions": [], "id": "11421", "issueType": "Task", "key": "RAZOR-628", "labels": ["docs", "stability/usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e38f5450-6788-4b1d-b329-524ce00d94e6", "resolution": "Duplicate", "resolutionDate": "2016-01-06T16:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Need additional dnsmasq examples for Razor configuration", "timeSpent": "PT0S", "updated": "2016-02-08T14:34:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/63.", "created": "2015-12-09T00:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit 1e0396e.", "created": "2015-12-10T14:54:00.000000"}], "components": ["Client"], "created": "2015-06-08T11:16:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Install the razor-client gem without a razor server. Run `razor --version` and see the correct client version displayed."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c9fbf7a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hyox6f:"}, {"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": "Code already merged, just needed testing work"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_82083477_*|*_1_*:*_1_*:*_15863612934_*|*_10007_*:*_1_*:*_137025571_*|*_5_*:*_1_*:*_2231546047_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_5453265012"}], "description": "When the razor-client runs with `--version` and the Razor server is unreachable, an error message displays and no client version is output. This is annoying if the user just wants to check its client version.\n\nThe desired behavior is to display the client version regardless, then show a connection error.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11307", "fixedVersions": ["RAZOR 1.2.0"], "id": "11307", "issueType": "Story", "key": "RAZOR-627", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2016-02-12T16:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Report razor-client version even if razor-server is unreachable", "timeSpent": "PT0S", "updated": "2016-03-09T12:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12: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@3e69dd42"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08zj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_527202192_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_35955118"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.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": "11419", "fixedVersions": [], "id": "11419", "issueType": "Sub-task", "key": "RAZOR-626", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-09T01:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12: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@7cf95d0e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08zb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_527204682_*|*_5_*:*_1_*:*_227850_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_35734284"}], "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": "11302", "fixedVersions": [], "id": "11302", "issueType": "Sub-task", "key": "RAZOR-625", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-09T01:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12: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@61c5ca93"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08z3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_527206412_*|*_5_*:*_1_*:*_235178_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_35729275"}], "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": "11142", "fixedVersions": [], "id": "11142", "issueType": "Sub-task", "key": "RAZOR-624", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-09T01:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:53: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@373ebd9e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08yv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_526967919_*|*_3_*:*_1_*:*_236456_*|*_5_*:*_1_*:*_35972859_*|*_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": "11093", "fixedVersions": [], "id": "11093", "issueType": "Sub-task", "key": "RAZOR-623", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-08T15:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:53: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@74d4a917"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08yn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_526968941_*|*_5_*:*_1_*:*_36212110_*|*_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": "10989", "fixedVersions": [], "id": "10989", "issueType": "Sub-task", "key": "RAZOR-622", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-08T15:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "thumbs up from [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91], [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] and [~accountid:623e7ac8562ab90069f9ed9b]", "created": "2015-06-08T15:13:00.000000"}], "components": [], "created": "2015-06-02T12:53: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@217ccb51"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08yf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_188218728_*|*_5_*:*_1_*:*_36386755_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_338585168"}], "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": "11969", "fixedVersions": [], "id": "11969", "issueType": "Sub-task", "key": "RAZOR-621", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-08T15:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages are available at http://builds.puppetlabs.lan/razor-client/1.0.0/", "created": "2015-06-04T15:19:00.000000"}], "components": [], "created": "2015-06-02T12:53: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@6c3e764e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08y7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_237855472_*|*_5_*:*_2_*:*_314452652_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_10885710"}], "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": "11932", "fixedVersions": [], "id": "11932", "issueType": "Sub-task", "key": "RAZOR-620", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-05T11:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "SHA: abb937b5e6f4db72c472dd8ac139e4afb8cef0de\nBranch: master", "created": "2015-06-04T15:12:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "{code}\ntag 1.0.0\nTagger: Melissa Stone <melissa@puppetlabs.com>\nDate:   Thu Jun 4 14:17:15 2015 -0700\n\n1.0.0\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1\nComment: GPGTools - http://gpgtools.org\n\niQIcBAABCgAGBQJVcMBbAAoJEBBUt6JL1uwwveoP+watV61bWb6yv/Eb288s99z3\nQZKGf6h/3Qd8CIK3QTrzOHHaw0Yo7vt2eTUlYSD72MuuUwthdht0FpPpqqcfIsoS\npD1xVvuSwSVKCObMKsqA/a3v3I/P6SsDc9FmRffEemdZ4eZnlfnWkTlCZSTql+vW\nMh/1uwpSvTyAGrl2EFfstySBL3dDKELy7Wo2VNnQBsmcwKioV4/2cH+D9UVGeqtu\nEPypEp5p0iJNOGvvPRnVHsDgt308B1x/7c29T3NO7xh/Ei09ZI+KxCl0OPCk0xLS\nAgI7egyryR+ywnJS+WmlK+kY6Keppj/aCGCVTCSe9Ul0odAPYx10uWdjhbHPfN5g\nwCsjgwGQoKQrSPJrPaaajgus67cqHNzIU7m7GUVvwrb/n9i0IWhppA914qxe8ZhY\nxk9fdvEVDqRsKBB+/Z6BbD01CcbU1IHYL9GYlt+HC+jJ/Pbq4Ov1HYnpAFZamzcN\nApXTOeTqCcry6pbpGU9U7I/aJAVNQx4tN4HVDodU7N4SY8hyHMj3FUbDSx4xYTKR\nTXtOnLnvfdxf1F5CJ2V6cx2KPqxtEHh7a1qXQ6ffhAgmJFmNaXI5GVsApk92qnLn\nDNvIslkvepU3O7i5/4XMudYLC9es4igYrAsoAAdHkShz9yY+W98GZYWvpiFxOi6u\nSx1JEGnMp0bYsaDWndh4\n=9E64\n-----END PGP SIGNATURE-----\n\ncommit abb937b5e6f4db72c472dd8ac139e4afb8cef0de\nAuthor: Scott McClellan <scott.mcclellan@puppetlabs.com>\nDate:   Thu Jun 4 16:10:10 2015 -0500\n\n    Set required Ruby version to >= 1.9.2\n\n    Running the client on e.g. Ruby 1.8.7 causes exceptions. Until these are\n    fixed as part of the work on https://puppet.atlassian.net/browse/RAZOR-572,\n    this commit will prevent the gem from being installed on those failing versions.\n\ndiff --git a/razor-client.gemspec b/razor-client.gemspec\nindex 6155898..0d815b8 100644\n--- a/razor-client.gemspec\n+++ b/razor-client.gemspec\n@@ -18,7 +18,9 @@ Gem::Specification.new do |spec|\n   spec.test_files    = spec.files.grep(%r{^spec/})\n   spec.require_paths = [\"lib\"]\n\n-  spec.required_ruby_version\n+  # This is added until compatibility issues can be resolved in\n+  # e.g. https://puppet.atlassian.net/browse/RAZOR-572.\n+  spec.required_ruby_version = '>= 1.9.2'\n\n   # mime-types is a dependency of rest-client. We need to explicitly depend\n   # on it and pin its version to make sure the gem works with Ruby 1.8.7\n{code}", "created": "2015-06-04T15:18:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://builds.puppetlabs.lan/razor-client/1.0.0/", "created": "2015-06-04T15:18:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] New SHA: df9bbcbc52159502d4936a2ebcb79c395e32d2a6", "created": "2015-06-04T16:17:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] Can we create the gem again with this SHA? e290bdd003c9770c928d3c530d516ed936e120c5", "created": "2015-06-04T18:50:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://builds.puppetlabs.lan/razor-client/1.0.0/artifacts/", "created": "2015-06-05T10:28:00.000000"}], "components": [], "created": "2015-06-02T12:53: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@422dca69"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08xz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_181386696_*|*_3_*:*_1_*:*_121016_*|*_5_*:*_2_*:*_325343727_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_56349397"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "11749", "fixedVersions": [], "id": "11749", "issueType": "Sub-task", "key": "RAZOR-619", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-05T10:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:53: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@6610b9c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08xr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_181094652_*|*_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": "11609", "fixedVersions": [], "id": "11609", "issueType": "Sub-task", "key": "RAZOR-618", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-06-04T15:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-06-04T15:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:53: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@158134ad"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08xj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_181081903_*|*_5_*:*_1_*:*_382130905_*|*_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": "11485", "fixedVersions": [], "id": "11485", "issueType": "Sub-task", "key": "RAZOR-617", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T15:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:53: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@5ac3c970"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08xb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_181066562_*|*_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": "11418", "fixedVersions": [], "id": "11418", "issueType": "Sub-task", "key": "RAZOR-616", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-06-04T15:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-06-04T15:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:53: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@3e45a6df"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08x3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_181051484_*|*_5_*:*_1_*:*_382173283_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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": "11266", "fixedVersions": [], "id": "11266", "issueType": "Sub-task", "key": "RAZOR-615", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T15:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:53: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@46041285"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08wv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_178888705_*|*_5_*:*_1_*:*_384344892_*|*_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": "11141", "fixedVersions": [], "id": "11141", "issueType": "Sub-task", "key": "RAZOR-614", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T14:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12: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@4f7572fd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08wn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_178885030_*|*_5_*:*_1_*:*_384356955_*|*_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": "11091", "fixedVersions": [], "id": "11091", "issueType": "Sub-task", "key": "RAZOR-613", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T14:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12: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@b9d8be9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08wf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_178883987_*|*_5_*:*_1_*:*_384361909_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.0.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10988", "fixedVersions": [], "id": "10988", "issueType": "Sub-task", "key": "RAZOR-612", "labels": [], "originalEstimate": "PT0S", "parent": "11968", "parentSummary": "razor-client 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T14:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0cbf1c7f6a007049e5b9", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12: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@3db0b585"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08w7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_563383324_*|*_6_*:*_1_*:*_0"}], "description": "razor-client 1.0.0 2015-06-08 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": "11968", "fixedVersions": [], "id": "11968", "issueType": "Task", "key": "RAZOR-611", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-09T01:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client 1.0.0 2015-06-08 Release", "timeSpent": "PT0S", "updated": "2015-06-09T01:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:18: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@7bbbe15f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08tz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_864734571_*|*_5_*:*_1_*:*_62498_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2432532671"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.1.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": "11931", "fixedVersions": [], "id": "11931", "issueType": "Sub-task", "key": "RAZOR-610", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-07-10T16:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Announcement [sent|https://groups.google.com/forum/#!topic/puppet-razor/emjuyKalsXg].", "created": "2015-07-10T16:09:00.000000"}], "components": [], "created": "2015-06-02T12:17: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@d9656b0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08tr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_864733628_*|*_5_*:*_1_*:*_218980_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2432381879"}], "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": "11746", "fixedVersions": [], "id": "11746", "issueType": "Sub-task", "key": "RAZOR-609", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-07-10T16:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:17: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@77363b71"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08tj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_864734351_*|*_5_*:*_1_*:*_255626_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2432351085"}], "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": "11608", "fixedVersions": [], "id": "11608", "issueType": "Sub-task", "key": "RAZOR-608", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-07-10T16:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:17: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@ba71d9a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08tb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_797816612_*|*_3_*:*_1_*:*_66918871_*|*_5_*:*_1_*:*_2432611204_*|*_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": "11484", "fixedVersions": [], "id": "11484", "issueType": "Sub-task", "key": "RAZOR-607", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-12T12:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:17: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@5fdbb824"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08t3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_797814615_*|*_5_*:*_1_*:*_2499539823_*|*_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": "11264", "fixedVersions": [], "id": "11264", "issueType": "Sub-task", "key": "RAZOR-606", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-11T17:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:17: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@645d01fa"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08sv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1777710850_*|*_5_*:*_1_*:*_1519650241_*|*_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": "11139", "fixedVersions": [], "id": "11139", "issueType": "Sub-task", "key": "RAZOR-605", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-23T02:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages available at http://builds.puppetlabs.lan/razor-server/1.0.1/", "created": "2015-06-10T11:43:00.000000"}], "components": [], "created": "2015-06-02T12:17: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@7bc477c6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08sn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_689162031_*|*_5_*:*_1_*:*_1519657780_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1088549331"}], "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": "11089", "fixedVersions": [], "id": "11089", "issueType": "Sub-task", "key": "RAZOR-604", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-23T02:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]: Please use SHA 7923f04eec2db57319f158b08f8898661d31f562 from branch master for this release.", "created": "2015-06-10T11:29:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages available at http://builds.puppetlabs.lan/razor-server/1.0.1/", "created": "2015-06-10T11:43:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The \"hooks\" directory is absent from a default packages install. I have modified the project_data.yaml file in this pull request: https://github.com/puppetlabs/razor-server/pull/308.\n\n[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e]: Let me know if this looks good to merge.", "created": "2015-06-10T19:27:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "New SHA: ea92e791f6c2d3f3dd9cfcefdb878020d9a13636", "created": "2015-06-11T16:07:00.000000"}], "components": [], "created": "2015-06-02T12:17: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@46696541"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08sf:"}, {"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_*:*_688348871_*|*_3_*:*_1_*:*_652615_*|*_5_*:*_2_*:*_2530204010_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_2_*:*_78171919"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "10987", "fixedVersions": [], "id": "10987", "issueType": "Sub-task", "key": "RAZOR-603", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-11T17:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:17: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@66bf372b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08s7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_180113207_*|*_6_*:*_2_*:*_3117269423"}], "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": "11967", "fixedVersions": [], "id": "11967", "issueType": "Sub-task", "key": "RAZOR-602", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-07-10T16:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Blocked by testing on https://puppet.atlassian.net/browse/RAZOR-571.", "created": "2015-06-04T14:18:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Update: RAZOR-571 is not blocking since that is client-only and has been released in RAZOR 1.0.", "created": "2015-06-10T11:30:00.000000"}], "components": [], "created": "2015-06-02T12:17: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@4e038792"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08rz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_688336212_*|*_5_*:*_1_*:*_2609054005_*|*_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": "11930", "fixedVersions": [], "id": "11930", "issueType": "Sub-task", "key": "RAZOR-601", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-10T11:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:16: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@5e658595"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08rr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_179904246_*|*_6_*:*_2_*:*_3117492266"}], "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": "11742", "fixedVersions": [], "id": "11742", "issueType": "Sub-task", "key": "RAZOR-600", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-07-10T16:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Updated by packaging.", "created": "2015-06-04T14:14:00.000000"}], "components": [], "created": "2015-06-02T12:16: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@4fc654dd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08rj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_179884450_*|*_6_*:*_3_*:*_3117517074"}], "description": "Bump VERSION in lib/RAZOR/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": "11607", "fixedVersions": [], "id": "11607", "issueType": "Sub-task", "key": "RAZOR-599", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-07-10T16:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:16: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@188a3e6c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08r3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_179859083_*|*_5_*:*_1_*:*_3117550862_*|*_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": "11447", "fixedVersions": [], "id": "11447", "issueType": "Sub-task", "key": "RAZOR-598", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T14:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:16: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@703dc145"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08qv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_179429364_*|*_5_*:*_1_*:*_3117985667_*|*_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": "11262", "fixedVersions": [], "id": "11262", "issueType": "Sub-task", "key": "RAZOR-597", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T14:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:16: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@6fb3dbd3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08qn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_178944213_*|*_5_*:*_1_*:*_3118476997_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.1.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11137", "fixedVersions": [], "id": "11137", "issueType": "Sub-task", "key": "RAZOR-596", "labels": [], "originalEstimate": "PT0S", "parent": "11087", "parentSummary": "razor-server 1.0.1 2015-06-11 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T13:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-07-10T16:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0cbf1c7f6a007049e5b9", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:16: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@380de2d2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08qf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3297455827_*|*_6_*:*_1_*:*_0"}], "description": "razor-server 1.0.1 2015-06-11 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": "11087", "fixedVersions": [], "id": "11087", "issueType": "Task", "key": "RAZOR-595", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-07-10T16:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-server 1.0.1 2015-06-11 Release", "timeSpent": "PT0S", "updated": "2015-07-10T16:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:14: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@11af2e00"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08pz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_531023417_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_34536759"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%221.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": "11966", "fixedVersions": [], "id": "11966", "issueType": "Sub-task", "key": "RAZOR-594", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-09T01:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Email sent out on [puppet-razor mailing list|https://groups.google.com/forum/#!topic/puppet-razor/foBTRJS3PRI].", "created": "2015-06-09T01:20:00.000000"}], "components": [], "created": "2015-06-02T12:14: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@a22a676"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08pr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "09/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_531024805_*|*_5_*:*_1_*:*_338686_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_34201720"}], "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": "11929", "fixedVersions": [], "id": "11929", "issueType": "Sub-task", "key": "RAZOR-593", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-09T01:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-06-09T01:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] - No docs work is planned for this release. Should we close the ticket? Thanks!", "created": "2015-06-02T12:21:00.000000"}], "components": [], "created": "2015-06-02T12:14: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@44ec4614"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08pj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_531027560_*|*_5_*:*_1_*:*_346457_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_34199458"}], "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": "11740", "fixedVersions": [], "id": "11740", "issueType": "Sub-task", "key": "RAZOR-592", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-09T01:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:13: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@79f4d652"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08pb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_529384020_*|*_3_*:*_1_*:*_1644036_*|*_5_*:*_1_*:*_34554218_*|*_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": "11606", "fixedVersions": [], "id": "11606", "issueType": "Sub-task", "key": "RAZOR-591", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-08T15:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:13: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@145e58b7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08p3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_529384699_*|*_5_*:*_1_*:*_36198824_*|*_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": "11483", "fixedVersions": [], "id": "11483", "issueType": "Sub-task", "key": "RAZOR-590", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-08T15:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "thumbs up from [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91], [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], [~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] and [~accountid:623e7ac8562ab90069f9ed9b]", "created": "2015-06-08T15:13:00.000000"}], "components": [], "created": "2015-06-02T12:13: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@284506ce"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08ov:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_190664368_*|*_5_*:*_1_*:*_36397202_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_338531387"}], "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": "11446", "fixedVersions": [], "id": "11446", "issueType": "Sub-task", "key": "RAZOR-589", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-08T15:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages are available at http://builds.puppetlabs.lan/razor-server/1.0.0/", "created": "2015-06-04T15:01:00.000000"}], "components": [], "created": "2015-06-02T12:13: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@6bf592e0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08on:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_182837253_*|*_5_*:*_1_*:*_374933848_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_7825866"}], "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": "11261", "fixedVersions": [], "id": "11261", "issueType": "Sub-task", "key": "RAZOR-588", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T17:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "SHA: 0baa03606c9b2389c04054fddb82a5fa6c55fd48\nBranch: 1.0.0", "created": "2015-06-04T13:51:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "{code}\ntag 1.0.0\nTagger: Melissa Stone <melissa@puppetlabs.com>\nDate:   Thu Jun 4 13:50:23 2015 -0700\n\n1.0.0\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1\nComment: GPGTools - http://gpgtools.org\n\niQIcBAABCgAGBQJVcLoPAAoJEBBUt6JL1uwwqV0P/3zH9lvGuzOKsRV8UKrnj8Gy\nRd73SZQbbqBhB0zwOXNRerWYwcd2qnGHsb0tQ39e4WNS2O/wzbsyRx49OfHI/UZX\ns/KQLLo0zB8Tpy9cFbkaVZiAJS0bNTPIB5HgkPcacuEl76OPy1fMTKU+cpKxHr/J\nmjwQTDw5KnyaB1vS4vhsUoIGyhxAtIRIr7c/kItOaClFXtLjLVchwQsfAajs+pMn\nN5JlJWgj601sCSsAKOBPlzreUOJthBzp6jAV0Ultn0kCcm9qNfu7vrBdQVKUEKC9\nLjlzRmQ+2fxWbnasog4//f53tHviZXLITfMkcj/T6OqW9ljpcperAQtFsf1UCQ+0\nFV60N21mmMYEbWffW/2oI3QLkSsufKCX8W/qx8p0lz0AGsWWDnF93aViIPnVdZC7\ncIpuToXwxT6PsMqI1EEdLKE8x9joKxseQpDp5VO4BROBARGvZVNJs3uOdbInamxK\nPgRTV543rg7c70YYG32oeEqfUh6/Vh8aN6Go0NoPKmfsG418x4aCcLQFzFNTaJzB\nwHwzR90aTti3Y9FoArcV7Qc0RDENVW5DXpxROujuc/L86V1Xni1yQKFoZqT4CICz\nbC4Nd4t2TmPDSgDDZ6N2+XM873CVieZwzQH8Ep51VPvE3UJzpAED/A51fqPZgahI\nVw9EsoJwLAT0HDplnAvQ\n=0gsH\n-----END PGP SIGNATURE-----\n\ncommit bd94d8b8eb32c37c6a7978233ed3523ccb115f76\nAuthor: Melissa Stone <melissa@puppetlabs.com>\nDate:   Thu Jun 4 13:37:47 2015 -0700\n\n    (maint) Remove stable & testing from build targets\n\ndiff --git a/ext/build_defaults.yaml b/ext/build_defaults.yaml\nindex 9d63443..62de3c0 100644\n--- a/ext/build_defaults.yaml\n+++ b/ext/build_defaults.yaml\n@@ -2,7 +2,7 @@\n packaging_url: 'git://github.com/puppetlabs/packaging.git --branch=master'\n packaging_repo: 'packaging'\n default_cow: 'base-squeeze-i386.cow'\n-cows: 'base-precise-i386.cow base-squeeze-i386.cow base-stable-i386.cow base-testing-i386.cow base-trusty-i386.cow base-wheezy-i386.cow'\n+cows: 'base-precise-i386.cow base-squeeze-i386.cow base-trusty-i386.cow base-wheezy-i386.cow'\n pbuild_conf: '/etc/pbuilderrc'\n packager: 'puppet'\n gpg_name: 'info@puppetlabs.com'\n{code}", "created": "2015-06-04T14:53:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "{code}\ntag 1.0.0\nTagger: Melissa Stone <melissa@puppetlabs.com>\nDate:   Thu Jun 4 13:50:23 2015 -0700\n\n1.0.0\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1\nComment: GPGTools - http://gpgtools.org\n\niQIcBAABCgAGBQJVcLoPAAoJEBBUt6JL1uwwqV0P/3zH9lvGuzOKsRV8UKrnj8Gy\nRd73SZQbbqBhB0zwOXNRerWYwcd2qnGHsb0tQ39e4WNS2O/wzbsyRx49OfHI/UZX\ns/KQLLo0zB8Tpy9cFbkaVZiAJS0bNTPIB5HgkPcacuEl76OPy1fMTKU+cpKxHr/J\nmjwQTDw5KnyaB1vS4vhsUoIGyhxAtIRIr7c/kItOaClFXtLjLVchwQsfAajs+pMn\nN5JlJWgj601sCSsAKOBPlzreUOJthBzp6jAV0Ultn0kCcm9qNfu7vrBdQVKUEKC9\nLjlzRmQ+2fxWbnasog4//f53tHviZXLITfMkcj/T6OqW9ljpcperAQtFsf1UCQ+0\nFV60N21mmMYEbWffW/2oI3QLkSsufKCX8W/qx8p0lz0AGsWWDnF93aViIPnVdZC7\ncIpuToXwxT6PsMqI1EEdLKE8x9joKxseQpDp5VO4BROBARGvZVNJs3uOdbInamxK\nPgRTV543rg7c70YYG32oeEqfUh6/Vh8aN6Go0NoPKmfsG418x4aCcLQFzFNTaJzB\nwHwzR90aTti3Y9FoArcV7Qc0RDENVW5DXpxROujuc/L86V1Xni1yQKFoZqT4CICz\nbC4Nd4t2TmPDSgDDZ6N2+XM873CVieZwzQH8Ep51VPvE3UJzpAED/A51fqPZgahI\nVw9EsoJwLAT0HDplnAvQ\n=0gsH\n-----END PGP SIGNATURE-----\n\ncommit bd94d8b8eb32c37c6a7978233ed3523ccb115f76\nAuthor: Melissa Stone <melissa@puppetlabs.com>\nDate:   Thu Jun 4 13:37:47 2015 -0700\n\n    (maint) Remove stable & testing from build targets\n\ndiff --git a/ext/build_defaults.yaml b/ext/build_defaults.yaml\nindex 9d63443..62de3c0 100644\n--- a/ext/build_defaults.yaml\n+++ b/ext/build_defaults.yaml\n@@ -2,7 +2,7 @@\n packaging_url: 'git://github.com/puppetlabs/packaging.git --branch=master'\n packaging_repo: 'packaging'\n default_cow: 'base-squeeze-i386.cow'\n-cows: 'base-precise-i386.cow base-squeeze-i386.cow base-stable-i386.cow base-testing-i386.cow base-trusty-i386.cow base-wheezy-i386.cow'\n+cows: 'base-precise-i386.cow base-squeeze-i386.cow base-trusty-i386.cow base-wheezy-i386.cow'\n pbuild_conf: '/etc/pbuilderrc'\n packager: 'puppet'\n gpg_name: 'info@puppetlabs.com'\n{code}", "created": "2015-06-04T15:00:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "packages are available at http://builds.puppetlabs.lan/razor-server/1.0.0/", "created": "2015-06-04T15:00:00.000000"}], "components": [], "created": "2015-06-02T12:13: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@17d2250f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08of:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_182795874_*|*_3_*:*_1_*:*_38892_*|*_5_*:*_1_*:*_382770054_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "11135", "fixedVersions": [], "id": "11135", "issueType": "Sub-task", "key": "RAZOR-587", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T15:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:13: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@355e0ae7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08o7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_178619598_*|*_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": "11085", "fixedVersions": [], "id": "11085", "issueType": "Sub-task", "key": "RAZOR-586", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-06-04T13:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-06-04T13:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:13: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@54c259b1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08nz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_178607696_*|*_5_*:*_1_*:*_387011365_*|*_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": "10986", "fixedVersions": [], "id": "10986", "issueType": "Sub-task", "key": "RAZOR-585", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T13:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:13: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@231037d4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08nr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_177880060_*|*_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": "11965", "fixedVersions": [], "id": "11965", "issueType": "Sub-task", "key": "RAZOR-584", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-06-04T13:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-06-04T13:37:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is done by packaging.", "created": "2015-06-04T13:37:00.000000"}], "components": [], "created": "2015-06-02T12:13: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@2e0be76e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08nj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_177855846_*|*_5_*:*_1_*:*_387773757_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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": "11928", "fixedVersions": [], "id": "11928", "issueType": "Sub-task", "key": "RAZOR-583", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T13:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:12: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@5768c67b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08nb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_177767379_*|*_5_*:*_1_*:*_387874784_*|*_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": "11737", "fixedVersions": [], "id": "11737", "issueType": "Sub-task", "key": "RAZOR-582", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T13:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:12: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@7a55a946"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08n3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_177761878_*|*_5_*:*_1_*:*_387884080_*|*_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": "11605", "fixedVersions": [], "id": "11605", "issueType": "Sub-task", "key": "RAZOR-581", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T13:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:12: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@75589a13"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08mv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_177161108_*|*_5_*:*_1_*:*_388495553_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%221.0.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11482", "fixedVersions": [], "id": "11482", "issueType": "Sub-task", "key": "RAZOR-580", "labels": [], "originalEstimate": "PT0S", "parent": "11259", "parentSummary": "razor-server 1.0.0 2015-06-08 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-04T13:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-06-09T01:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0cbf1c7f6a007049e5b9", "attachments": [], "comments": [], "components": [], "created": "2015-06-02T12:12: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@7d909fe5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz08mn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_565803486_*|*_6_*:*_1_*:*_0"}], "description": "razor-server 1.0.0 2015-06-08 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": "11259", "fixedVersions": [], "id": "11259", "issueType": "Task", "key": "RAZOR-579", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-06-09T01:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-server 1.0.0 2015-06-08 Release", "timeSpent": "PT0S", "updated": "2015-06-09T01:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2015-05-15T15:10:00.000000", "creator": "623e76afd32a94006a65d63d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b729c16"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzy0f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_813418_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11793", "fixedVersions": [], "id": "11793", "issueType": "Task", "key": "RAZOR-578", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623e76afd32a94006a65d63d", "resolution": "Won't Fix", "resolutionDate": "2015-05-15T15:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Automate test for update-hook-configuration", "timeSpent": "PT0S", "updated": "2015-06-04T14:13:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Thanks for the input. These issues are now fixed.", "created": "2015-05-12T16:49:00.000000"}], "components": ["DOCS"], "created": "2015-05-12T01:51:00.000000", "creator": "557058:0cc28489-f549-4a27-8863-54f5ed261a77", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c3a0d4e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzufb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_49529673_*|*_5_*:*_1_*:*_32131975297_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_4848427"}], "description": "Just reading: http://docs.puppetlabs.com/pe/latest/razor_using.html and found out some issues:\n\n1) Get facts\nbq. Type razor nodes <node name> again, to see the facts associated with the node\n\nThis is not true, correct command is: {code}razor nodes <node name> facts{code}\n\n2) Creating tag\nbg. razor create-tag \u2013name small \u2013rule \u2018[\u201d<\u201d, [\u201cnum\u201d, [\u201cfact\u201d, \u201cmemorysize_mb\u201d]], 1024]\u2019\n\nAgain, this is not correct syntax (since the dashes are combined into `\u2013`). Correct is:\n{code}\nrazor create-tag --name small --rule '[\"<\", [\"num\", [\"fact\", \"memorysize_mb\"]], 1024]'\n{code}\n\nGenerally, the formatting for commands and output in the [creating tags section|http://docs.puppetlabs.com/pe/latest/razor_using.html#step-2-create-a-tag] needs some attention.\n\n3) In https://docs.puppetlabs.com/pe/latest/razor_objects.html\nThere is: {code}#### Sample Hook{code}, which looks like un-translated markup syntax.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11791", "fixedVersions": [], "id": "11791", "issueType": "Bug", "key": "RAZOR-577", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:0cc28489-f549-4a27-8863-54f5ed261a77", "resolution": "Done", "resolutionDate": "2016-05-18T14:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Documentation flaws", "timeSpent": "PT0S", "updated": "2016-05-18T14:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623a46a94a57610068e6760c", "body": "This has caught me out too.", "created": "2015-09-30T03:31:00.000000"}, {"author": "557058:67562e3b-e143-430b-8745-78ffb8c5cc23", "body": "Ping [~accountid:557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df]", "created": "2016-03-03T11:17:00.000000"}, {"author": "557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df", "body": "I think the only standard would be the Puppet docs: [https://puppet.com/docs/puppet/5.3/lang_template_erb.html], which specifically calls out {{-%>}} being valid.", "created": "2018-03-15T06:04:00.000000"}], "components": [], "created": "2015-05-07T07:19:00.000000", "creator": "5f9913ee62584c006bd6cb1a", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1d5eddea"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:5"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Sep/15"}], "description": "Razor Templates fail when the whitespace suppressing tag is used.\n\nFollowing snippet fails:\n{code}\n<% if ! is_virtual -%>\nfoo\n<% end -%>\n{code}\n\nFrom following stackoverflow question it seems that Razor uses a different ERB engine or options than Puppet.\nhttp://stackoverflow.com/a/25626629\n\nERB in Razor and in Puppet should behave the same.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11882", "fixedVersions": [], "id": "11882", "issueType": "Bug", "key": "RAZOR-574", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5f9913ee62584c006bd6cb1a", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor uses a different ERB implementation than Puppet", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "623e76afd32a94006a65d63d", "attachments": [], "comments": [{"author": "623e76afd32a94006a65d63d", "body": "verified fix in razor-server repo, commit d778f5cc044a5b96aa81d888be2c8091c336733e", "created": "2015-05-04T18:24:00.000000"}], "components": [], "created": "2015-04-30T18:25:00.000000", "creator": "623e76afd32a94006a65d63d", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2c675277"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzo8f:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_283676353_*|*_1_*:*_1_*:*_61883386_*|*_5_*:*_1_*:*_16928334322_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_6854"}], "description": "/opt/puppet/share/razor-server/lib/razor/command/run_hook.rb:25\nneeds to be updated from:\n{code} razor run-node --hook counter --event node-booted --node node1 {code}\nto\n{code} razor run-hook --name counter --event node-booted --node node1 {code}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11881", "fixedVersions": ["RAZOR 1.1.0"], "id": "11881", "issueType": "Bug", "key": "RAZOR-573", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623e76afd32a94006a65d63d", "resolution": "Fixed", "resolutionDate": "2015-05-04T18:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update run-hook reference", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Ruby 1.8.7 is past its end-of-life. Can you try upgrading to 1.9.3?", "created": "2015-04-28T13:40:00.000000"}, {"author": "557058:3e05a662-e39a-4985-8e6f-2f1ea5f8c91f", "body": "We could of course, but I figured I would open this issue anyways because of precedence being set in this commit to support ruby versions less than 1.9.2: https://github.com/puppetlabs/razor-client/commit/61a38088930ab3693eda5dccf353c8044e788dcd\n\nI will see if I can spin up a new environment running ruby 1.9.3, I expect it will have no issues.", "created": "2015-04-28T13:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Ah correct, that does seem to be an inconsistency. Thanks for bringing it\nup. I'll leave another comment here when we have a path forward.\n", "created": "2015-04-28T13:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/60.\n\nDecided to go the route of monkey-patching the failing methods, which should suffice for now.", "created": "2015-11-06T12:57:00.000000"}], "components": ["Client"], "created": "2015-04-28T13:36:00.000000", "creator": "557058:3e05a662-e39a-4985-8e6f-2f1ea5f8c91f", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2aee9605"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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|hz1zg7:"}, {"fieldName": "Release Notes", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Bug Fix"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_521629515_*|*_10009_*:*_1_*:*_252682076_*|*_5_*:*_1_*:*_11061730529_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_5449294956_*|*_10004_*:*_1_*:*_14856965488_*|*_10006_*:*_1_*:*_515423785_*|*_10005_*:*_1_*:*_695927389"}], "description": "When installing razor-client 0.16, it failed to communicate with the server, constantly giving this error:\n\n{noformat}\n/usr/lib64/ruby/gems/1.8/gems/razor-client-0.16.0/bin/../lib/razor/cli/navigate.rb:116:in `json_get': undefined method `encode_www_form' for URI:Module (NoMethodError)\nfrom /usr/lib64/ruby/gems/1.8/gems/razor-client-0.16.0/bin/../lib/razor/cli/navigate.rb:25:in `entrypoint'\nfrom /usr/lib64/ruby/gems/1.8/gems/razor-client-0.16.0/bin/../lib/razor/cli/navigate.rb:13:in `initialize'\nfrom /usr/lib64/ruby/gems/1.8/gems/razor-client-0.16.0/bin/../lib/razor/cli/parse.rb:160:in `new'\nfrom /usr/lib64/ruby/gems/1.8/gems/razor-client-0.16.0/bin/../lib/razor/cli/parse.rb:160:in `navigate'\nfrom /usr/lib64/ruby/gems/1.8/gems/razor-client-0.16.0/bin/../lib/razor/cli/parse.rb:57:in `version'\nfrom /usr/lib64/ruby/gems/1.8/gems/razor-client-0.16.0/bin/razor:31\nfrom /usr/bin/razor:23:in `load'\nfrom /usr/bin/razor:23\n{noformat}\n\nCurling the server directly returned the expected data. Rolling back to razor-client 0.15.1 worked as expected.", "environment": "Razor Server Version: 0.16.1\nRazor Client version: 0.16.0\n\nRuby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]\nCentOS release 6.6 (Final)\nKernel 2.6.32-504.12.2.el6.x86_64\n\nLocal Gems:\n\ncolored (1.2)\ncommand_line_reporter (3.3.5)\ndomain_name (0.5.24)\nhttp-cookie (1.0.2)\njson (1.5.5)\nmime-types (1.25.1)\nmulti_json (1.11.0)\nnetrc (0.10.3)\nrazor-client (0.15.1)\nrdoc (4.2.0)\nrest-client (1.6.8)\nrubygems-update (2.4.6)\nterminal-table (1.4.5)\nunf (0.1.4)\nunf_ext (0.0.7.1)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11880", "fixedVersions": ["RAZOR 1.1.0"], "id": "11880", "issueType": "Bug", "key": "RAZOR-572", "labels": ["stability/usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3e05a662-e39a-4985-8e6f-2f1ea5f8c91f", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Restore support for Ruby < 1.9.3 for razor-client", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [{"attacher": "623e76afd32a94006a65d63d", "created": "2015-05-14T18:09:00.000000", "name": "RAZOR-571.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10249"}, {"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2015-05-15T13:25:00.000000", "name": "Screen Shot 2015-05-15 at 12.23.42 PM.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10229"}, {"attacher": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "created": "2015-06-10T17:22:00.000000", "name": "Screen Shot 2015-06-10 at 4.21.18 PM.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10239"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/58.", "created": "2015-04-30T17:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit df7b7dc.", "created": "2015-05-08T14:09:00.000000"}, {"author": "623e76afd32a94006a65d63d", "body": "Tested with the above gem - razor object collections all wrap nicely. Adding a screenshot for a razor tasks listing on a small term, looks readable and improved, just want to ensure that it looks as intended.", "created": "2015-05-14T18:09:00.000000"}, {"author": "623e76afd32a94006a65d63d", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]^^", "created": "2015-05-15T11:20:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:623e76afd32a94006a65d63d]: Which method did you use to split the console pane? It seems the client is calculating the width of the terminal window not an individual pane but as the entire window. Can you also run these two commands and report the output:\n\n{code}tput cols{code}\n{code}stty size{code}", "created": "2015-05-15T12:59:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I would expect the output on a small window to look like the attached image. This means we likely need to use a command that factors in the number of panes (`stty size` might do this).", "created": "2015-05-15T13:25:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit 7f99015.", "created": "2015-05-18T15:01:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This was released in FOSS Razor 1.0, but will be included in a later PE Razor.", "created": "2015-06-10T11:07:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "fixed with pe-razor-client 0.16.0.40", "created": "2015-06-10T17:22:00.000000"}], "components": ["Client"], "created": "2015-04-27T12:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@54d49831"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyoxpj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_530323198_*|*_1_*:*_1_*:*_274659055_*|*_10007_*:*_1_*:*_680719409_*|*_5_*:*_1_*:*_29624924485_*|*_6_*:*_2_*:*_351117_*|*_10011_*:*_2_*:*_2332070520"}], "description": "If the user views a collection that has long widths for any of the columns, the results wrap in a manner that is very hard to read. This should be improved to take into account the size of the user's terminal window.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11255", "fixedVersions": ["RAZOR 1.0"], "id": "11255", "issueType": "Bug", "key": "RAZOR-571", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client collection views should fit to width", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91]: On the client-side, is it an acceptable rule that single-character argument names must use a single dash?", "created": "2015-04-23T20:14:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Single-character options with a single dash is actually what POSIX codifies: http://pubs.opengroup.org/stage7tc1/basedefs/V1_chap12.html\n\nLong options are a GNU addition: https://www.gnu.org/prep/standards/html_node/Command_002dLine-Interfaces.html\n\nSo, yes, single-character options should have one dash, long options should have two dashes.", "created": "2015-04-24T11:09:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] Does this require engineering work, or is this primarily a docs task, to update the docs to reflect this?", "created": "2015-05-21T12:57:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "It requires a code change and an update to the pe-razor-client gem, too.", "created": "2015-05-21T13:02:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/59.", "created": "2015-10-06T17:47:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit e691d2a.", "created": "2016-02-12T11:49:00.000000"}], "components": ["Client", "DOCS"], "created": "2015-04-22T18:10:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@563aaa7e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyox7j:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14427378574_*|*_10007_*:*_1_*:*_11127942172_*|*_5_*:*_1_*:*_3555177932_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_4745106668"}], "description": "Generally, when an option is abbreviated to one letter, it only requires one dash; the client only allows two dashes. This should work but does not:\n{code}\n> razor create-broker --name petest --broker-type puppet-pe -c server=master.example.com\nError: Unexpected argument -c\nTry 'razor --help' for more information\n{code}\n\nThis variant works, but probably shouldn't:\n{code}\n> razor create-broker --name petest --broker-type puppet-pe --c server=master.example.com\n...\n{code}\n\n*In Scope*\n- Make {{--c}} illegal for e.g. {{update-broker-configuration}}\n-- Include warning \"(did you mean -c?)\"\n- Make {{-c}} legal for e.g. {{update-broker-configuration}}\n- Keep {{-configuration}} illegal\n-- Include warning \"(did you mean --configuration?)\"\n- Keep {{--configuration}} legal", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11604", "fixedVersions": ["RAZOR 1.2.0"], "id": "11604", "issueType": "Bug", "key": "RAZOR-566", "labels": ["stability/usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client abbreviates --configuration to --c instead of -c", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - It seems I should add this as a step, but what does the user actually do? What do you mean by accommodate and how do you make sure the puppet master will accommodate the new node's architecture?", "created": "2015-04-26T15:46:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: Let's say the puppet master is on Ubuntu 14.04 and the new node coming up is CentOS 7. The user would need to go into the puppet master's Classification tab, add \"pe_repo::platform::el-7-x86_64\" (or something like that) to the puppet master, then do a puppet run. Once that is done, the master can handle the EL 7 node. I think this needs to be the case for any machine coming under the puppet master's control, so it's just an extension of that.", "created": "2015-04-28T14:45:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "This is now here: https://docs.puppetlabs.com/pe/latest/razor_prereqs.html#install-pe-in-your-razor-environment\n\nand here: https://docs.puppetlabs.com/pe/latest/razor_using.html#step-45-add-perepo-to-pe-master", "created": "2015-04-30T15:15:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I would add one more note to https://docs.puppetlabs.com/pe/latest/razor_using.html#step-45-add-perepo-to-pe-master stating that this step is unnecessary if the machine is the same architecture as the puppet master.", "created": "2015-04-30T16:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "\"add the appropriate class for the repo\" should link to https://docs.puppetlabs.com/pe/latest/razor_using.html#step-45-add-perepo-to-pe-master.", "created": "2015-04-30T16:08:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "After those two fixes, it looks good!", "created": "2015-04-30T16:08:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Done. Should be building soon. Thanks for your input!", "created": "2015-04-30T17:48:00.000000"}], "components": ["DOCS"], "created": "2015-04-21T14:30:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@79418d1f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzimf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_780279052_*|*_10009_*:*_1_*:*_9200851_*|*_6_*:*_1_*:*_0"}], "description": "In order for a node to be registered in PE from the puppet-pe broker, the puppet master needs to accommodate the new node's architecture. This requirement should be added to the documentation as an optional preparation step (just if the user includes the puppet-pe broker) before the user creates a policy.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11082", "fixedVersions": [], "id": "11082", "issueType": "Task", "key": "RAZOR-565", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-04-30T17:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Document pe_repo requirements in Razor", "timeSpent": "PT0S", "updated": "2015-04-30T17:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This is blocked on updating the pathing, and will happen for all platforms at once", "created": "2015-09-30T10:41:00.000000"}], "components": [], "created": "2015-04-14T16:21: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@4e6cfbf3"}, {"fieldName": "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": "CPR-226"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1j4f:"}, {"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] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_86572175_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_71125070_*|*_10005_*:*_2_*:*_14423510649"}], "epicLinkSummary": "Provide server packages for Ubuntu 15.04", "estimate": "PT0S", "externalId": "11789", "fixedVersions": [], "id": "11789", "issueType": "Task", "key": "RAZOR-557", "labels": [], "originalEstimate": "PT0S", "parent": "60505", "parentSummary": "Provide server packages for Ubuntu 15.04", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-09-30T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "add ubuntu 15.04 to razor-server build_defaults", "timeSpent": "PT0S", "updated": "2015-09-30T10:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Blocked on getting ubuntu 15.04 cows available", "created": "2015-04-15T16:23:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This is blocked on updating the razor pathing, and will happen for all platforms at once", "created": "2015-09-30T10:41:00.000000"}], "components": [], "created": "2015-04-14T16: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@5f084e13"}, {"fieldName": "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": "CPR-226"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1j47:"}, {"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": "1_*:*_1_*:*_86544241_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_71114043_*|*_10005_*:*_2_*:*_14423547325"}], "epicLinkSummary": "Provide server packages for Ubuntu 15.04", "estimate": "PT0S", "externalId": "11603", "fixedVersions": [], "id": "11603", "issueType": "Task", "key": "RAZOR-556", "labels": [], "originalEstimate": "PT0S", "parent": "60505", "parentSummary": "Provide server packages for Ubuntu 15.04", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-09-30T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "build and ship razor-torquebox for ubuntu 15.04", "timeSpent": "PT0S", "updated": "2015-09-30T10:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "63d40635a05386069cdb69d6", "body": "Closing. We should be working on Fedora 23 now. ", "created": "2016-01-19T21:36:00.000000"}], "components": [], "created": "2015-04-14T15:45: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@4dab9bca"}, {"fieldName": "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": "CPR-221"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1j53:"}, {"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": "20/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85769293_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_71463548_*|*_10005_*:*_2_*:*_24059451028"}], "epicLinkSummary": "Fedora 22 as a Server Platform", "estimate": "PT0S", "externalId": "11133", "fixedVersions": [], "id": "11133", "issueType": "Task", "key": "RAZOR-555", "labels": [], "originalEstimate": "PT0S", "parent": "60424", "parentSummary": "Fedora 22 as a Server Platform", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2016-01-19T21:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add fedora 22 to razor-server build_defaults", "timeSpent": "PT0S", "updated": "2016-01-19T21:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "63d40635a05386069cdb69d6", "body": "Closing. We should be working on Fedora 23 now. ", "created": "2016-01-19T21:36:00.000000"}], "components": [], "created": "2015-04-14T15:45: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@8050d26"}, {"fieldName": "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": "CPR-221"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1j4v:"}, {"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": "20/Jan/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_85792299_*|*_10007_*:*_1_*:*_2780900_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1198396689_*|*_10005_*:*_2_*:*_22929718205"}], "epicLinkSummary": "Fedora 22 as a Server Platform", "estimate": "PT0S", "externalId": "10984", "fixedVersions": [], "id": "10984", "issueType": "Task", "key": "RAZOR-554", "labels": [], "originalEstimate": "PT0S", "parent": "60424", "parentSummary": "Fedora 22 as a Server Platform", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2016-01-19T21:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Build and ship razor-torquebox for fedora 22", "timeSpent": "PT0S", "updated": "2016-01-19T21:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Looking through {{/var/log/razor-server/server.log}}\n\n{code}\n17:21:00,981 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) JBAS014613: Operation (\"add\") failed - address: ([\n    (\"socket-binding-group\" => \"standard-sockets\"),\n    (\"socket-binding\" => \"http\")\n]) - failure description: \"JBAS014688: Wrong type for port. Expected [EXPRESSION, INT] but was STRING\"\n{code}", "created": "2015-04-13T18:29:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I'm not positive if the above error is due to the different java version or not, but it's quite possible.", "created": "2015-04-13T18:34:00.000000"}, {"author": "623c1704bef8a60068c79d05", "body": "I've got the same issue under CentOS7. I've installed razor-server following this guide https://github.com/puppetlabs/razor-server/wiki/Installation\n\nAfter performing 'systemctl start razor-server' there wasn't 8080 port in the list of listening ports (netstat -anp) and the same message was found in the log file. But starting razor-server by hands works fine to perform test HTTP-request to API.\n\n{noformat}\n[root@razor ~]# source /etc/razor/razor-torquebox.sh \n[root@razor ~]# torquebox run --bind-address 0.0.0.0\n...\n{noformat}\n\nI don't familiar with jruby/ruby environment, but I found that /opt/razor-torquebox/jboss/bin/standalone.sh is executed with following option \"-Dhttp.port=$\\{RAZOR_PORT\\}\" (/usr/lib/systemd/system/razor-server.service). This environment variable should be defined in /usr/share/razor-server/razor-server.env.\n\nAfter adding necessary line into environment file, I've got working instance of razor-server.\n{noformat}\n# echo \"RAZOR_PORT=8080\" >> /usr/lib/systemd/system/razor-server.env\n{noformat}\n\nAnother way to fix the issue is just removing -Dhttp.port=$\\{RAZOR_PORT\\} from /usr/lib/systemd/system/razor-server.service\n\nCurrent master branch of razor-server https://github.com/puppetlabs/razor-server/commit/5fe3cd52143578d0900ab1664d01a08e0f1c4fdb uses HTTP_PORT and HTTPS_PORT environment variables instead of RAZOR_PORT. But it will trigger this issue too if new variables will not be defined.", "created": "2015-04-28T10:21:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracking this issue via https://puppet.atlassian.net/browse/RAZOR-629.", "created": "2015-07-10T01:02:00.000000"}], "components": [], "created": "2015-04-13T18:21: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@103d793a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyzdzr:"}, {"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_*:*_7540867693_*|*_6_*:*_1_*:*_0"}], "description": "On Fedora 21 x86_64, with the following packages installed:\n{code}\njava-1.8.0-openjdk-1.8.0.40-25.b25.fc21.x86_64\njava-1.8.0-openjdk-headless-1.8.0.40-25.b25.fc21.x86_64\nrazor-torquebox-3.1.1.5-1.fc21.noarch\nrazor-server-0.16.1.63-1.fc21.noarch\npostgresql-server-9.3.6-1.fc21.x86_64\npostgresql-libs-9.3.6-1.fc21.x86_64\npostgresql-9.3.6-1.fc21.x86_64\n{code}\n\n\n{code}\nApr 13 17:21:26 tczo5jv08ep2xt4 standalone.sh[23783]: 17:21:26,709 ERROR [org.jboss.as] (Controller Boot Thread) JBAS015875: JBoss AS 7.2.x.slim.incremental.16 \"Janus\" started (with errors) in 28510ms - Started 148 of 225 services (1 services failed or missing dependencies, 75 services are passive or on-demand)\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11964", "fixedVersions": [], "id": "11964", "issueType": "Bug", "key": "RAZOR-553", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Duplicate", "resolutionDate": "2015-07-10T01:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "It looks like razor doesn't start up correctly with java 1.8.0", "timeSpent": "PT0S", "updated": "2015-07-10T01:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "this is blocked on getting working utopic cows", "created": "2015-04-13T17:39:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "PR merged, deciding where to ship this package, to apt/main and/or apt/pc1", "created": "2015-04-21T14:28:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Utopic goes EOL on 2015-07-23[1], so this work isn't needed.\n\n[1] - https://lists.ubuntu.com/archives/ubuntu-announce/2015-July/000197.html", "created": "2015-07-22T11:58:00.000000"}], "components": [], "created": "2015-04-13T17: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@5a2cc42b"}, {"fieldName": "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": "CPR-92"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypd0v:"}, {"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": "1_*:*_1_*:*_8536_*|*_10007_*:*_1_*:*_2911907_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_3_*:*_1874847515_*|*_10006_*:*_1_*:*_458324_*|*_10005_*:*_1_*:*_6741343970"}], "epicLinkSummary": "Provide packages for Utopic Unicorn (14.10)", "estimate": "PT0S", "externalId": "11249", "fixedVersions": [], "id": "11249", "issueType": "Task", "key": "RAZOR-563", "labels": [], "originalEstimate": "PT0S", "parent": "60462", "parentSummary": "Provide packages for Utopic Unicorn (14.10)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-07-22T11:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "build razor-torquebox for utopic", "timeSpent": "PT0S", "updated": "2015-07-22T11:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This will not happen until razor pathing is updated, at which point we will make packages available everywhere", "created": "2015-09-25T16:05:00.000000"}], "components": [], "created": "2015-04-13T17: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@4a7a0a3"}, {"fieldName": "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": "CPR-111"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1j3j:"}, {"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": "1_*:*_1_*:*_9361_*|*_10007_*:*_1_*:*_2827401_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_2_*:*_1875370223_*|*_10005_*:*_1_*:*_12372212660"}], "epicLinkSummary": "Please provide repository for Debian jessie", "estimate": "PT0S", "externalId": "11132", "fixedVersions": [], "id": "11132", "issueType": "Task", "key": "RAZOR-561", "labels": [], "originalEstimate": "PT0S", "parent": "60269", "parentSummary": "Please provide repository for Debian jessie", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-09-25T16:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Build razor-torquebox for debian jessie", "timeSpent": "PT0S", "updated": "2015-09-25T16:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I shipped these packages to yum.puppetlabs.com main repos, when I actually should have shipped them to the pc1 repos. The packages should be removed from the main repos, and re-shipped to the pc1 repos", "created": "2015-04-17T10:33:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I want to verify with Haus what should be done here", "created": "2015-04-17T12:06:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "I realized I didn't have the full information to do this ticket, so I shouldn't have pulled it into the sprint to begin with", "created": "2015-04-20T15:16:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This will not happen until we update the razor pathing", "created": "2015-09-24T12:45:00.000000"}], "components": [], "created": "2015-04-13T17:37: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@c053d86"}, {"fieldName": "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": "CPR-131"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1j2v:"}, {"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": "Didn't have the full information to do this ticket, so shouldn't have pulled it into the sprint to begin with"}, {"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": "null_*:*_3_*:*_0_*|*_1_*:*_2_*:*_13233_*|*_10007_*:*_1_*:*_67921963_*|*_5_*:*_1_*:*_245507349_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1552648932_*|*_10006_*:*_1_*:*_3799977_*|*_10005_*:*_1_*:*_12273728033"}], "epicLinkSummary": "Please add Fedora 21 release and packages to yum.puppetlabs.com", "estimate": "PT0S", "externalId": "11080", "fixedVersions": [], "id": "11080", "issueType": "Task", "key": "RAZOR-559", "labels": [], "originalEstimate": "PT0S", "parent": "60585", "parentSummary": "Please add Fedora 21 release and packages to yum.puppetlabs.com", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-09-24T12:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Build razor-torquebox for fedora 21", "timeSpent": "PT0S", "updated": "2015-09-24T12:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "These packages will be shipped to the PC1 repos on yum.puppetlabs.com", "created": "2015-04-17T19:34:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This will not happen until razor pathing has been updated", "created": "2015-09-24T12:46:00.000000"}], "components": [], "created": "2015-04-13T14: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@1ca38b9"}, {"fieldName": "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": "CPR-131"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1j33:"}, {"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] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9154_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1798294193_*|*_10006_*:*_1_*:*_91924416_*|*_10005_*:*_1_*:*_12273747997"}], "epicLinkSummary": "Please add Fedora 21 release and packages to yum.puppetlabs.com", "estimate": "PT0S", "externalId": "11602", "fixedVersions": [], "id": "11602", "issueType": "Task", "key": "RAZOR-558", "labels": [], "originalEstimate": "PT0S", "parent": "60585", "parentSummary": "Please add Fedora 21 release and packages to yum.puppetlabs.com", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-09-24T12:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Build razor-server for fedora 21", "timeSpent": "PT0S", "updated": "2015-09-24T12:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2015-04-13T09:17:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Install Razor + razor-client\nType `razor brokers` and see the entry for `noop`"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7812947e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:3"}], "description": "As a Razor user, I want to streamline the use of a default broker to save time.\n\nOne unnecessary hoop to walk through in installing Razor is creating a noop broker via `razor create-broker --name noop --broker-type noop`. Post-install, this broker should be instantiated so users can skip this step.\n\nThere are two potential approaches to this:\n # Add a row to the database after install (via database migration).\n # Allow usage of brokers that do not have any configuration. This means e.g. the create-policy command will work referencing a broker-type that does not have a valid broker object if the broker-type does not have any possible configuration.\n\nI lean toward option 2 to keep database migration simple, and potential future use cases.\n\nDocs work will be necessary to clarify that creating a noop broker is no longer necessary if that is the desired broker.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10983", "fixedVersions": [], "id": "10983", "issueType": "Story", "key": "RAZOR-551", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "'noop' broker should be instantiated by default", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623cfdfb8d8b9c0068b93e3c", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/300.", "created": "2015-04-10T14:40:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 5511521.", "created": "2015-05-07T12:00:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Passed CI", "created": "2015-06-04T14:05:00.000000"}], "components": ["Server"], "created": "2015-04-10T14:24:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@54e40ea4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypbnz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Jun/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_624501894_*|*_1_*:*_1_*:*_914518_*|*_10007_*:*_1_*:*_2323195250_*|*_5_*:*_1_*:*_3117971531_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1802243086"}], "description": "The `razor nodes` collection uses 'name' to order the nodes. This is fine except that 'node99' then is considered greater than 'node100', skewing the ordering. This collection should use 'id' for ordering.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11963", "fixedVersions": ["RAZOR 1.0.1"], "id": "11963", "issueType": "Bug", "key": "RAZOR-550", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-06-04T14:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Nodes collection has suboptimal 'name' ordering", "timeSpent": "PT0S", "updated": "2015-07-10T16:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/299.", "created": "2015-04-10T14:20:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "1 point for dev.", "created": "2015-04-28T15:21:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit d40cc7b.", "created": "2015-07-10T16:46:00.000000"}], "components": ["Server"], "created": "2015-04-09T17:58:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "This command without the http_port should return a valid bootstrap file referencing port 8150:\nwget \"https://${RAZOR_HOSTNAME}:${HTTPS_PORT}/api/microkernel/bootstrap?nic_max=1\" -O /var/lib/tftpboot/bootstrap.ipxe"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1b4bea90"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"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|hz0z13:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_411605096_*|*_1_*:*_1_*:*_75731903_*|*_10007_*:*_1_*:*_7868750222_*|*_5_*:*_1_*:*_8476433944_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2257362851"}], "description": "As a typical Razor user, I want the system to infer what the HTTP port is so that I can create a bootstrap file without knowing details about Razor's setup.\n\nThe decision tree for what port to use for the bootstrap URL should be as follows:\n\n- Is a valid `http_port` argument supplied? Use that. (Throw error on invalid.)\n- Is the HTTP_PORT environment variable defined? Use that.\n- Is the request secure? Use 8150.\n- Otherwise, use the port where the request was received.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11247", "fixedVersions": ["RAZOR 1.1.0"], "id": "11247", "issueType": "Story", "key": "RAZOR-549", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-08-10T14:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor should be able to guess http port for bootstrapping", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [{"attacher": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "created": "2015-04-10T12:18:00.000000", "name": "Screen Shot 2015-04-10 at 11.15.27 AM.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10228"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] (or [~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0]): Is this still an issue?", "created": "2015-07-10T01:33:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "body": "I have the same issue when I created my repo from firmware-7.4.0-amd64-netinst for some reason when is loading the os ask for a CD to continue with the installation. If anybody know how to fix this issue I would like the help . thanks", "created": "2015-09-04T16:18:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "body": "I was able to fix the issue configuring the pressed.erb file. Thanks,", "created": "2015-09-11T11:15:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user Can you provide some detail on which preseed changes were needed to make that work?", "created": "2015-09-11T11:24:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "body": "Sure I will provide the fixed shortly. Thanks,", "created": "2015-09-11T11:30:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "body": "Here is how I fixed this issue:\nStep 1 I downloaded a template of the preseed.erb file\nStep 2 modified the preseed file to make it work\nStep 3   modified the boot_install.erb so it will look for the preseed file at boot. \nThat's all I did but as simple as is look it was a nightmare because the template are not working and the raid configuration was a pain in the neck. Thanks,\n", "created": "2015-09-22T09:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Former user The preseed file is intended to be pulled from kernel_args.erb rather than boot_install.erb (`url=<%= file_url(\"preseed\") %>`). Was that not working? Can you post the template version of the preseed file that worked for you so we can improve the stock Debian task? I'm sorry to hear about the bothersome process you went through, but I hope we can improve the state of things in this task.", "created": "2015-09-22T16:14:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "body": "Preseed.erb \n#### Contents of the preconfiguration file (for wheezy)\n### Localization\n# Preseeding only locale sets language, country and locale.\nd-i debian-installer/locale string en_US\n\n# The values can also be preseeded individually for greater flexibility.\n#d-i debian-installer/language string en\n#d-i debian-installer/country string NL\n#d-i debian-installer/locale string en_GB.UTF-8\n# Optionally specify additional locales to be generated.\n#d-i localechooser/supported-locales multiselect en_US.UTF-8, nl_NL.UTF-8\n\n# Keyboard selection.\n# keymap is an alias for keyboard-configuration/xkb-keymap\nd-i keyboard-configuration/xkb-keymap select us\n# d-i keyboard-configuration/toggle select No toggling\n\n### Network configuration\n# Disable network configuration entirely. This is useful for cdrom\n# installations on non-networked devices where the network questions,\n# warning and long timeouts are a nuisance.\n#d-i netcfg/enable boolean false\n\n# netcfg will choose an interface that has link if possible. This makes it\n# skip displaying a list if there is more than one interface.\nd-i netcfg/choose_interface select auto\n\n# To pick a particular interface instead:\n#d-i netcfg/choose_interface select eth1\n\n# To set a different link detection timeout (default is 3 seconds).\n# Values are interpreted as seconds.\n#d-i netcfg/link_detection_timeout string 10\n\n# If you have a slow dhcp server and the installer times out waiting for\n# it, this might be useful.\n#d-i netcfg/dhcp_timeout string 60\n#d-i netcfg/dhcpv6_timeout string 60\n\n# If you prefer to configure the network manually, uncomment this line and\n# the static network configuration below.\n#d-i netcfg/disable_autoconfig boolean true\n\n# If you want the preconfiguration file to work on systems both with and\n# without a dhcp server, uncomment these lines and the static network\n# configuration below.\n#d-i netcfg/dhcp_failed note\n#d-i netcfg/dhcp_options select Configure network manually\n\n# Static network configuration.\n#\n# IPv4 example\n#d-i netcfg/get_ipaddress string 192.168.1.42\n#d-i netcfg/get_netmask string 255.255.255.0\n#d-i netcfg/get_gateway string 192.168.1.1\n#d-i netcfg/get_nameservers string 192.168.1.1\n#d-i netcfg/confirm_static boolean true\n#\n# IPv6 example\n#d-i netcfg/get_ipaddress string fc00::2\n#d-i netcfg/get_netmask string ffff:ffff:ffff:ffff::\n#d-i netcfg/get_gateway string fc00::1\n#d-i netcfg/get_nameservers string fc00::1\n#d-i netcfg/confirm_static boolean true\n\n# Any hostname and domain names assigned from dhcp take precedence over\n# values set here. However, setting the values still prevents the questions\n# from being shown, even if values come from dhcp.\nd-i netcfg/get_hostname string unassigned-hostname\nd-i netcfg/get_domain string unassigned-domain\n\n# If you want to force a hostname, regardless of what either the DHCP\n# server returns or what the reverse DNS entry for the IP is, uncomment\n# and adjust the following line.\n#d-i netcfg/hostname string somehost\n\n# Disable that annoying WEP key dialog.\nd-i netcfg/wireless_wep string\n# The wacky dhcp hostname that some ISPs use as a password of sorts.\n#d-i netcfg/dhcp_hostname string radish\n\n# If non-free firmware is needed for the network or other hardware, you can\n# configure the installer to always try to load it, without prompting. Or\n# change to false to disable asking.\n#d-i hw-detect/load_firmware boolean true\n\n### Network console\n# Use the following settings if you wish to make use of the network-console\n# component for remote installation over SSH. This only makes sense if you\n# intend to perform the remainder of the installation manually.\n#d-i anna/choose_modules string network-console\n#d-i network-console/authorized_keys_url string http://10.0.0.1/openssh-key\n#d-i network-console/password password Power01\n#d-i network-console/password-again password Power01\n\n### Mirror settings\n# If you select ftp, the mirror/country string does not need to be set.\n#d-i mirror/protocol string ftp\nd-i mirror/country string manual\nd-i mirror/http/hostname string ftp.us.debian.org\nd-i mirror/http/directory string /debian\nd-i mirror/http/proxy string\n\n# Suite to install.\n#d-i mirror/suite string testing\n# Suite to use for loading installer components (optional).\n#d-i mirror/udeb/suite string testing wheezy\n\n### Account setup\n# Skip creation of a root account (normal user account will be able to\n# use sudo).\n#d-i passwd/root-login boolean false\n# Alternatively, to skip creation of a normal user account.\n#d-i passwd/make-user boolean false\n\n# Root password, either in clear text\nd-i passwd/root-password password Power01\nd-i passwd/root-password-again password Power01\n# or encrypted using an MD5 hash.\n#d-i passwd/root-password-crypted password [MD5 hash]\n\n# To create a normal user account.\nd-i passwd/user-fullname string Fernando Cortijo\nd-i passwd/username string fcortijo\n# Normal user's password, either in clear text\nd-i passwd/user-password password Power01\nd-i passwd/user-password-again password Power01\n# or encrypted using an MD5 hash.\n#d-i passwd/user-password-crypted password [MD5 hash]\n# Create the first user with the specified UID instead of the default.\n#d-i passwd/user-uid string 1010\n\n# The user account will be added to some standard initial groups. To\n# override that, use this.\n#d-i passwd/user-default-groups string audio cdrom video\n\n### Clock and time zone setup\n# Controls whether or not the hardware clock is set to UTC.\nd-i clock-setup/utc boolean true\n\n# You may set this to any valid setting for $TZ", "created": "2015-09-22T16:43:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "body": "Boot_install.erb\n#!ipxe\necho Razor <%= task.label %> task boot_call\necho Installation node: <%= node_url  %>\necho Installation repo: <%= repo_url %>\nsleep 3\n\n# Loading the preseed file is done this way because of a \"feature\" where\n# the preseed/url kernel argument is augmented if the url's domain does not\n# contain a period. So if the policy's hostname pattern was\n# \"node${id}.example.com\", the preseed URL would be mutated from\n# \"http://razor-server:8080/svc/file/preseed\" to\n# \"http://razor-server.example.com:8080/svc/file/preseed\" This method grabs\n# the preseed file first, then passes it using preseed/file instead of\n# preseed/url.\ninitrd <%= file_url(\"preseed\") %> preseed.cfg || goto error\nkernel <%= repo_url(\"/install/netboot/debian-installer/amd64/linux\") %> <%= render_template(\"kernel_args\").strip %> || goto error\ninitrd <%= repo_url(\"/install/netboot/debian-installer/amd64/initrd.gz\") %> || goto error\nboot\n", "created": "2015-09-22T16:47:00.000000"}, {"author": "qm:f7b4bc64-445a-440e-8354-a55854c39cee:c203a743-3091-459d-aafe-ba47bc24f7b6", "body": "I hope that helps. Thanks!", "created": "2015-09-22T16:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Great, thanks! I'll look over the differences and likely put up some improvements.", "created": "2015-09-22T17:06:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Given that Debian Wheezy's LTS EOL is two months away, I'm closing this ticket. If the issue is still present in later versions of Debian, we should have a different ticket to fix that.", "created": "2018-03-12T13:57:00.000000"}], "components": [], "created": "2015-04-08T15: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@30868d29"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hymvs7:"}, {"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": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_161749874_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_92195019101"}], "description": "See RAZOR-538 for background and screenshot.\n\n[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] could you add further clarification? ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11787", "fixedVersions": [], "id": "11787", "issueType": "Bug", "key": "RAZOR-548", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Won't Fix", "resolutionDate": "2018-03-12T13:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Problem provisioning debian wheezy with razor", "timeSpent": "PT0S", "updated": "2018-03-12T13:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Puppet Module"], "created": "2015-04-03T11:24:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "- Install the module\n - Classify a node with 'razor' and run Puppet\n - Create config.yaml file and Postgres database\n - Start razor-server service\n - Razor's API should be operational on port 8151\n - Razor's SVC should be operational on port 8150"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7dfef5c3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:2"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "22/Jul/15"}], "description": "As a FOSS Razor user, I want to set up Razor using a Puppet module so that I can integrate it more easily into my infrastructure.\n\nThe current state of the razor module is outdated, as it was created prior to proper packaging standards. It should be rewritten to behave more similarly to the PE module.\n\nIn Scope:\n- Stop using http://links.puppetlabs.com/razor-server-latest.zip as the module's download in favor of typical packaging\n- PID file should be handled correctly a la start/stop\n\nOut of Scope:\n- Automatically creating the config.yaml\n- Automatically setting up Postgres database", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11128", "fixedVersions": [], "id": "11128", "issueType": "Story", "key": "RAZOR-547", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Rewrite FOSS module", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/57.", "created": "2015-04-01T18:39:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit 1f66eae.", "created": "2015-04-01T20:16:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "block testing by PE-8981", "created": "2015-04-02T12:47:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "To test, add this to the hook's output JSON:\n\n{code}\n{\n    ...\n    \"output\": {\"test\": \"test\"}\n}\n{code}\n\nThen just query the event log via `razor events`.", "created": "2015-04-03T12:31:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "keep seeing the exit_status: 3 message as below, even after deleting all the \"-\" in configuration.yaml file and the associated attribute in the node-booted script:\n\n| 601  | 2015-04-03 17:22:59 -0700 |                                                        | (none)                              | cause: node-booted, exit_status: 3, severity: error  ", "created": "2015-04-03T18:30:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Added the non-string message to json output script as below:\n{code}\n#! /bin/bash\n\nset -e\n\njson=$(< /dev/stdin)\n\n# This script requires `jq` in $PATH: http://stedolan.github.io/jq/\nname=$(jq '.hook.name' <<< \"${json}\")\nvalue=$(( $(jq '.hook.configuration.\"node-booted\"' <<< \"${json}\") + 1 ))\n\ncat <<EOF\n{\n  \"hook\": {\n    \"configuration\": {\n      \"update\": {\n        \"node-booted\": $value\n      }\n    }\n  },\n  \"node\": {\n    \"metadata\": {\n      \"update\": {\n        \"last_hook_execution\": \"node-booted\"\n      }\n    }\n  }\n}\nEOF\n{code}\n\nAnd got the correct output:\n\n{code}\n$ razor events --limit 2\nFrom https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/events?limit=5:\n\n+------+---------------------------+---------+-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\n| name | timestamp                 | message | entities                            | entry                                                                                                                                                                                                                                 | \n+------+---------------------------+---------+-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\n| 300  | 2015-04-06 10:04:04 -0700 |         | (none)                              | cause: node-booted, exit_status: 0, severity: info, actions: updating hook configuration: {\"update\"=>{\"node-booted\"=>3}} and updating node metadata: {\"update\"=>{\"last_hook_execution\"=>\"node-booted\"}}                               | \n+------+---------------------------+---------+-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\n| 299  | 2015-04-06 10:04:04 -0700 |         | task: ubuntu/trusty, repo: ubuntu14 | event: boot, template: boot_local, severity: info                                                                                                                                                                                     | \n+------+---------------------------+---------+-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\n{code}\n", "created": "2015-04-06T11:14:00.000000"}], "components": ["Client"], "created": "2015-04-01T18:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@70db77ae"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyz7mn:"}, {"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": "Bug found in hooks testing"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_8534_*|*_1_*:*_1_*:*_121999_*|*_10007_*:*_1_*:*_5845244_*|*_5_*:*_1_*:*_5493677048_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_399474707"}], "description": "Hooks can return as output non-string values. The `razor events` view is not prepared to handle hashes and arrays in the entry.\n\nThis manifests as this when attempting to display:\n\n{code}\n$ razor events\nError: undefined method `+' for nil:NilClass\nTry 'razor --help' for more information\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11245", "fixedVersions": ["RAZOR 1.0"], "id": "11245", "issueType": "Bug", "key": "RAZOR-545", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-04-06T11:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client error when event message is not a string", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Ping [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] for story points", "created": "2015-04-01T16:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "3 for dev.", "created": "2015-04-01T17:27:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "1 for docs\n", "created": "2015-04-01T17:38:00.000000"}, {"author": "557058:fba4c131-aa30-4295-a1e1-8b3f9398190b", "body": "FYI - updated the other ticket with how we made this work:\nhttps://puppet.atlassian.net/browse/RAZOR-543\n", "created": "2015-08-12T17:37:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Moving into grooming prep sprint so we can discuss remaining work as a team and confirm estimates.", "created": "2015-12-12T13:59:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Duplicates RAZOR-543.", "created": "2016-02-16T11:18:00.000000"}], "components": [], "created": "2015-04-01T16:47:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "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": "See *In Scope*"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@77b8fc0e"}, {"fieldName": "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": "RAZOR-766"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyo2un:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "01/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_16498227102_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_6404929498_*|*_10005_*:*_1_*:*_4815112070"}], "description": "*In Scope*\n* Modify razor-server to accept a configuration pointing to additional Windows drivers to be included as part of a WinPE image\n* Razor-server will actually inject these drivers\n", "epicLinkSummary": "Razor Windows Improvements", "estimate": "PT0S", "externalId": "11481", "fixedVersions": [], "id": "11481", "issueType": "Story", "key": "RAZOR-544", "labels": ["windows"], "originalEstimate": "PT0S", "parent": "11945", "parentSummary": "Razor Windows Improvements", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Duplicate", "resolutionDate": "2016-02-16T11:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Expose ability to specify extra drivers to WinPE image as Razor configuration", "timeSpent": "PT0S", "updated": "2016-02-16T11:18:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Ping [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] for story points ", "created": "2015-04-01T16:48:00.000000"}, {"author": "557058:fba4c131-aa30-4295-a1e1-8b3f9398190b", "body": "We were able to do this via the following in build-razor-winpe.ps1:\n$driver = join-path $workdir \"ciscoucsnic\"\nadd-windowsdriver -Driver $driver -Path $mount\n\nIdeally, it would be most flexible to have the $workdir be a generic directory", "created": "2015-08-05T14:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 4f8cff4.", "created": "2015-08-26T10:55:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Moving into grooming prep sprint so we can discuss remaining work as a team and confirm estimates.", "created": "2015-12-12T13:59:00.000000"}], "components": [], "created": "2015-04-01T16:45:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "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": "Confirmation that its possible in an automatic fashion to insert drivers into  WinPE"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3299ee94"}, {"fieldName": "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": "RAZOR-766"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hynvbz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "05/Aug/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_204326_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_17044355526_*|*_10004_*:*_1_*:*_2421780_*|*_10006_*:*_1_*:*_12677182190"}], "description": "Razor ships w/build-winpe folder and build-razor-winpe.ps1 script that references said directory, and users can supply drivers in that directory for injection into their winpe image\n\n*In Scope*\n* This ticket is to test and document this functionality\n* Testing should happen with a UCS machine by adding drivers and confirming they are consumed/used as expected\n\n*Open Questions*\n* We need to confirm we have hardware available for these tests ", "epicLinkSummary": "Razor Windows Improvements", "estimate": "PT0S", "externalId": "11442", "fixedVersions": ["RAZOR 1.1.0", "RAZOR 1.2.0"], "id": "11442", "issueType": "Story", "key": "RAZOR-543", "labels": ["windows"], "originalEstimate": "PT0S", "parent": "11945", "parentSummary": "Razor Windows Improvements", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2016-03-10T16:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Confirm ability to specify drivers", "timeSpent": "PT0S", "updated": "2016-03-10T16:27:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "removing fix version until this is slotted into sprints", "created": "2015-12-22T13:51:00.000000"}], "components": [], "created": "2015-03-31T15:49:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@580ab452"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:1"}, {"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": "22/Dec/15"}], "description": "As a Razor user, I want to see where the various configuration parameters are for Razor so I can change them in the proper place.\n\n*In Scope*\nEach setting printed by Razor appears additionally with the file or location of that setting.\n\n*Out of Scope*\nCreate the initial `razor config` output.\n\n*Open questions*\n* Should the output include the exact file location of e.g. the config.yaml?\n* Should the environment variable defaults include the exact environment variable name?\n\n*API specification*\nAdd a property to each item in the output from /api/collections/config called `source`, whose values can be:\n- config.yaml\n- config-defaults.yaml\n- environment variable\n- application default \\[this is for hard-coded values]\n\n*CLI specification*\nSame as RAZOR-531 except adding a rightmost column for \"source\".", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11125", "fixedVersions": [], "id": "11125", "issueType": "Story", "key": "RAZOR-542", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Expose where config parameters come from in `razor config`", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/297.", "created": "2015-03-31T04:16:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is this for 1.0 or 1.0.1?\n\ncc [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0]", "created": "2015-03-31T13:58:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit b856428.", "created": "2015-03-31T17:20:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fix version of 1.0 added.", "created": "2015-03-31T18:30:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Will test in razor 1.0", "created": "2015-04-01T13:54:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Test done", "created": "2015-04-03T10:34:00.000000"}, {"author": "557058:618f6155-e13f-4a8b-ab11-35c9f65fbb2f", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Are you just messing with me? Marked as Adopted and commented as Found work?", "created": "2015-04-08T12:38:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "hmm - yeah that description could be better. The use of 'found' is overloaded. I meant to say it was a new blocker discovered during GA testing. I think that's \"found\"? It wasn't associated with a planned story.", "created": "2015-04-08T12:43:00.000000"}, {"author": "557058:618f6155-e13f-4a8b-ab11-35c9f65fbb2f", "body": "Ok, marking it as Found", "created": "2015-04-08T12:45:00.000000"}], "components": ["Server"], "created": "2015-03-31T03:31:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "New nodes that reference a modified repo will use the updated task reference."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4de951b6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyz62f:"}, {"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": "Found work during final GA testing"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "31/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_4018192_*|*_1_*:*_1_*:*_2678783_*|*_10007_*:*_1_*:*_47041571_*|*_5_*:*_1_*:*_5755171591_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_230955924"}], "description": "As a Razor user, I wish to update the task on a repo in order to change the steps performed with an ISO without recreating many existing objects in the system.\n\nThe `update-policy-task` command now exists, but since the task is optional on the policy, it should be helpful to change the task on the repo too.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11480", "fixedVersions": ["RAZOR 1.0"], "id": "11480", "issueType": "Story", "key": "RAZOR-541", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-04-03T10:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add `update-repo-task` command", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Hi [~accountid:557058:0ccd0833-f31b-4e91-a2ba-e46a0acb1438] \u2014 Thanks for the ticket. For this problem, we have two existing suggestions for users:\n\n1. Isolate which machines can contact the Razor server at the network level. Since provisioning networks are typically isolated, I think this is a common approach.\n2. Use generic data in kickstart files, then overwrite this when the node enters a config management solution. Puppet, for example, supports a few mechanisms for overriding the root password on a machine.\n\nIt is by design that the /svc namespace is unsecured, partially due to the nature of iPXE and the need for any machine to be able to provision through Razor. For these reasons, you'll have better peace of mind through one of the two solutions above. Hope that solves your problem.", "created": "2016-07-06T17:05:00.000000"}], "components": ["Server"], "created": "2015-03-31T03:22:00.000000", "creator": "557058:0ccd0833-f31b-4e91-a2ba-e46a0acb1438", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@68a5a829"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyz627:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jul/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_40052192839_*|*_6_*:*_1_*:*_0"}], "description": "Hi, currently there are no protection of potentially sensitive files in the /svc namespace. Since these files are accessed during a nodes initialization, there are not really many ways to do this, but I've noticed that some other solutions have implemented a few tricks:\n\n1) Restrict access to file_url('preseed') and similar files to the IP of the node.\n\nThe preseed/kickstart files typically includes hashed passwords, and should be considered sensitive data.\n\nTo be able to debug things, there should be a mechanism to get the file from other sources. Typically be adding a secret key to the url or accessing from some kind of admin IP. Or maybe doing HTTP auth as an admin.\n\n2) Restrict access to file_url('preseed') and similar files to X minutes after the node is supposed to access it. Or possibly have a counter.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11440", "fixedVersions": [], "id": "11440", "issueType": "New Feature", "key": "RAZOR-540", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:0ccd0833-f31b-4e91-a2ba-e46a0acb1438", "resolution": "Won't Do", "resolutionDate": "2016-07-06T16:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Simple security to protect sensitive node installation data", "timeSpent": "PT0S", "updated": "2016-07-06T17:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/296.", "created": "2015-03-31T00:19:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 12f2b6d.", "created": "2015-03-31T00:19:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Also tracked by https://github.com/puppetlabs/razor-server/pull/298.", "created": "2015-03-31T13:43:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is the fix version here 1.0 or 1.0.1? ", "created": "2015-03-31T13:50:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Also, could you add an estimate? ", "created": "2015-03-31T13:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 7f0b92b.", "created": "2015-03-31T13:59:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c]: Fix version is 1.0, story points = 2.", "created": "2015-03-31T14:00:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] have we confirmed this can be reviewed / tested if required prior to razor GA? ", "created": "2015-03-31T14:03:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Yes, Scott and I have been talking on this ticket since morning and he already has a fix that I successfully tested on QA server. Scott did the promote and I will retest it with official build when it's available later today or tomorrow.", "created": "2015-03-31T15:24:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "2 for QA", "created": "2015-04-01T15:28:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "tested with latest build", "created": "2015-04-01T16:30:00.000000"}], "components": [], "created": "2015-03-30T14:50:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@655ed99e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyz5n3:"}, {"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": "reported during QA testing for GA"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "31/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_14279613_*|*_1_*:*_2_*:*_34162049_*|*_10007_*:*_2_*:*_636749_*|*_5_*:*_2_*:*_5906715156_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_129739236"}], "description": "file: /opt/puppet/share/razor-server/lib/razor/data/hook.rb line 339\nMethod view_hash needs to be modified to fix the 'undefined method 'policy'\n\n{code}\n13:05:32,759 INFO  [razor.sequel] (http-/0.0.0.0:8150-1) (0.001000s) SELECT * FROM \"policies\" WHERE (\"id\" = 1) ORDER BY \"rule_number\" LIMIT 1\n13:05:32,760 INFO  [razor.sequel] (http-/0.0.0.0:8150-1) (0.000000s) SELECT * FROM \"hooks\"\n13:05:32,762 INFO  [razor.web.api] (http-/0.0.0.0:8150-1) NoMethodError - undefined method `policy' for Razor::Data::Node:Class:\n/opt/puppet/share/razor-server/lib/razor/data/hook.rb:339:in `view_hash'\n/opt/puppet/share/razor-server/lib/razor/data/hook.rb:95:in `serialize_arguments'\n/opt/puppet/share/razor-server/lib/razor/data/hook.rb:87:in `run'\n{code}\n\nAlso the output format of the sample hook needs to be updated to avoid the below errros:\n{code}\ncause: node-bound-to-policy\n              exit_status: 0\n                  severity: error\n                    error: unexpected key in hook's output: metadata and undefined operation on hook: value; should be 'update' or 'remove'\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11192", "fixedVersions": ["RAZOR 1.0"], "id": "11192", "issueType": "Bug", "key": "RAZOR-539", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Fixed", "resolutionDate": "2015-04-01T16:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "NoMethodError - undefined method `policy' for Razor::Data::Node:Class:", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "created": "2015-04-06T12:51:00.000000", "name": "Screen Shot 2015-04-06 at 11.44.05 AM.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10273"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/295.", "created": "2015-03-30T10:31:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 6025233.", "created": "2015-03-31T16:20:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "block testing by PE-8981", "created": "2015-04-02T12:46:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 4a4926d.", "created": "2015-04-02T17:58:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "after discussion with [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0], it seems like this might be because the debian iso is a netinst minimal iso. I've downloaded the full wheezy image and uploaded it as http://int-resources.ops.puppetlabs.net/ISO/Debian/debian-7.8.0-amd64-DVD-1.iso", "created": "2015-04-07T14:45:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I tried again with the full ISO image file that [~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] uploaded above and found the same problem of mountable file systems.\nCan you double check if new preseed/url work properly with Wheezy?\n\n{code}\nPhongs-MacBook-Pro:json phongly$ razor repos\nFrom https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/repos:\n\n+------------+----------------------------------------------------------------------------------------+-----+---------------+\n| name       | iso_url                                                                                | url | task          | \n+------------+----------------------------------------------------------------------------------------+-----+---------------+\n| ubuntu14   | http://int-resources.ops.puppetlabs.net/ISO/Ubuntu/14.04/ubuntu-14.04-server-amd64.iso | --- | ubuntu/trusty | \n+------------+----------------------------------------------------------------------------------------+-----+---------------+\n| fullwheezy | http://int-resources.ops.puppetlabs.net/ISO/Debian/debian-7.8.0-amd64-DVD-1.iso        | --- | debian        | \n+------------+----------------------------------------------------------------------------------------+-----+---------------+\n\nQuery an entry by including its name, e.g. `razor repos ubuntu14`\n\nPhongs-MacBook-Pro:json phongly$ \n{code}", "created": "2015-04-07T15:43:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Before provisioning with wheezy, I move-policy fullwheezy before the Ubuntu one and reinstall the node:\n{code}\n$ razor move-policy --name \"wheezy_full\" --before UBUNTU14_tdlsfap9ip0gg0q\nFrom https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/policies/wheezy_full:\n\n       name: wheezy_full\n       repo: fullwheezy\n       task: debian\n     broker: pe\n    enabled: true\n  max_count: nil\n       tags: tdlsfap9ip0gg0q\n      nodes: 0\n    command: https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/commands/8\n\nPhongs-MacBook-Pro:json phongly$ razor policies\nFrom https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/policies:\n\n+--------------------------+------------+---------------+--------+---------+-----------+-----------------+-------+\n| name                     | repo       | task          | broker | enabled | max_count | tags            | nodes | \n+--------------------------+------------+---------------+--------+---------+-----------+-----------------+-------+\n| wheezy_full              | fullwheezy | debian        | pe     | true    |           | tdlsfap9ip0gg0q | 0     | \n+--------------------------+------------+---------------+--------+---------+-----------+-----------------+-------+\n| UBUNTU14_tdlsfap9ip0gg0q | ubuntu14   | ubuntu/trusty | pe     | true    | 1         | tdlsfap9ip0gg0q | 1     | \n+--------------------------+------------+---------------+--------+---------+-----------+-----------------+-------+\n{code}", "created": "2015-04-07T15:50:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] could you list the exact error message you're seeing with wheezy? ", "created": "2015-04-07T17:19:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "(or post a screen shot)", "created": "2015-04-07T17:19:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] The screenshot is exactly same with the current one on this ticket. ", "created": "2015-04-08T10:35:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Provisioning Ubuntu Trusty successfully so I set this ticket resolved.\n\nRAZOR-548 filed for handling problem with Debian Wheezy", "created": "2015-04-08T15:21:00.000000"}], "components": ["Server"], "created": "2015-03-30T10:08:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5b1e6699"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyz56f:"}, {"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": "The previous Trusty task was not working properly"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_1145156_*|*_1_*:*_1_*:*_220500_*|*_10007_*:*_1_*:*_107280385_*|*_3_*:*_1_*:*_1168913_*|*_4_*:*_1_*:*_1896411_*|*_5_*:*_1_*:*_5306089797_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_684652753"}], "description": "On Ubuntu Trusty, the preseed/file download method is only working in select cases. Better for most users will be to download the preseed via preseed/url, like it was before RAZOR-366.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11191", "fixedVersions": ["RAZOR 1.0"], "id": "11191", "issueType": "Bug", "key": "RAZOR-538", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-04-08T15:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ubuntu Trusty task needs preseed/url instead of preseed/file", "timeSpent": "PT0S", "updated": "2015-06-09T01:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/56.", "created": "2015-03-26T17:27:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit a496106.", "created": "2015-03-26T18:07:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is this fix version 1.0 or 1.0.1? \n\nAlso can you provide an estimate?\n\nSame to [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0]", "created": "2015-03-31T13:53:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "2 for dev.", "created": "2015-03-31T15:12:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Test done.\n\n[root@razor-server-1 counter.hook]# service pe-razor-server stop\nStopping pe-razor-server: . done.\n[root@razor-server-1 counter.hook]# razor\nUsage: razor [FLAGS] NAVIGATION\n    -d, --dump                       Dumps API output to the screen\n    -a, --api                        Show API help for a command\n    -k, --insecure                   Allow SSL connections without verified certificates\n    -u, --url URL                    The full Razor API URL, can also be set\n                                     with the RAZOR_API environment variable\n                                     (default https://localhost:8151/api)\n    -v, --version                    Show the version of Razor\n    -h, --help                       Show this screen\nError: Could not connect to the server at https://razor-server-1.delivery.puppetlabs.net:8151/api. More help is available after pointing\nthe client to a Razor server\n[root@razor-server-1 counter.hook]# echo $?\n1\n", "created": "2015-04-01T15:23:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "1 for QA", "created": "2015-04-01T15:27:00.000000"}], "components": [], "created": "2015-03-26T17:06:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@38dc8cf4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyz3vr:"}, {"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": "Work found by QA razor GA testing"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "26/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_422613257_*|*_1_*:*_2_*:*_1287274_*|*_10007_*:*_2_*:*_13119419_*|*_5_*:*_2_*:*_5910746065_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_75222022"}], "description": "when pe-razor-server has not been fully restarted, run a razor cli command\nexpected: exit code 1\nactual: exit code is 0 as below:\n{code}\n[root@razor-server-1 razor]# service pe-razor-server restart >&/dev/null\n[root@razor-server-1 razor]# razor\nUsage: razor [FLAGS] NAVIGATION\n    -d, --dump                       Dumps API output to the screen\n    -a, --api                        Show API help for a command\n    -k, --insecure                   Allow SSL connections without verified certificates\n    -u, --url URL                    The full Razor API URL, can also be set\n                                     with the RAZOR_API environment variable\n                                     (default https://localhost:8151/api)\n    -v, --version                    Show the version of Razor\n    -h, --help                       Show this screen\nError: Could not connect to the server at https://razor-server-1.delivery.puppetlabs.net:8151/api. More help is available after pointing\nthe client to a Razor server\n[root@razor-server-1 razor]# echo $?\n0\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11438", "fixedVersions": ["RAZOR 1.0"], "id": "11438", "issueType": "Bug", "key": "RAZOR-536", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Fixed", "resolutionDate": "2015-04-01T15:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor cli fails and returns exit code 0 ", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/293.", "created": "2015-03-25T19:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 1924b13.", "created": "2015-03-26T00:04:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is this for razor 1.0 or 1.0.1?\n\n[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] will you be able to review this before 1.0? ", "created": "2015-03-31T14:05:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Yes, I just add this into my razor test plan for 1.0", "created": "2015-04-01T13:46:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Test done", "created": "2015-04-01T15:07:00.000000"}], "components": ["Server"], "created": "2015-03-25T19:33:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@23f053a1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypbrb:"}, {"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": "razor GA testing"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_44623542_*|*_1_*:*_1_*:*_323730_*|*_10007_*:*_2_*:*_15964149_*|*_5_*:*_1_*:*_5911702781_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_527939528"}], "description": "When a user has the following configuration:\n\n{code}\n---\nvalue:\n  description: \"The current value of the counter\"\n  default: 0\n{code}\n\nThe `default` value will not have any effect because `required` defaults to false. The default will only currently take effect if the attribute is required.\n\nInstead, it would be clearer if the default took effect before required. So if \"default\" is present, \"required\" is obsolete.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11079", "fixedVersions": ["RAZOR 1.0"], "id": "11079", "issueType": "Bug", "key": "RAZOR-534", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-04-01T15:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Hooks \"required\" vs. \"default\" is not clear", "timeSpent": "PT0S", "updated": "2015-06-09T01:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Scott already had a fix for the problem", "created": "2015-03-25T18:12:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/292.", "created": "2015-03-25T18:53:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit d6d3236.", "created": "2015-03-25T19:26:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "fixed, tested with build 3.8.0-rc0-385-gf26b15f", "created": "2015-03-30T13:14:00.000000"}], "components": [], "created": "2015-03-25T18:11:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@672b2abe"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyz1l3:"}, {"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": "10008_*:*_1_*:*_152637950_*|*_1_*:*_1_*:*_2483732_*|*_10007_*:*_1_*:*_1975638_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_257086734"}], "description": "Create a hook and attempted to reinstall-node, the node will boot into microkernel and stop there.\nExpected: It should be reboot and start install new OS defined in the associated policy.\n\nError logs:\n{code}\n16:47:51,939 INFO  [razor.sequel] (http-/0.0.0.0:8150-1) (0.006000s) SELECT * FROM \"policies\" WHERE (\"id\" = 5) ORDER BY \"rule_number\" LIMIT 1 FOR UPDATE\n16:47:51,941 INFO  [razor.sequel] (http-/0.0.0.0:8150-1) (0.000000s) SELECT * FROM \"hooks\"\n16:47:51,945 INFO  [razor.sequel] (http-/0.0.0.0:8150-1) (0.001000s) SELECT * FROM \"repos\" WHERE \"id\" = 5\n16:47:51,949 INFO  [razor.sequel] (http-/0.0.0.0:8150-1) (0.001000s) SELECT * FROM \"brokers\" WHERE \"id\" = 1\n16:47:51,951 INFO  [razor.sequel] (http-/0.0.0.0:8150-1) (0.001000s) SELECT \"tags\".* FROM \"tags\" INNER JOIN \"policies_tags\" ON ((\"policies_tags\".\"tag_id\" = \"tags\".\"id\") AND (\"policies_tags\".\"policy_id\" = 5))\n16:47:51,952 INFO  [razor.sequel] (http-/0.0.0.0:8150-1) (0.000000s) SELECT * FROM \"nodes\" WHERE (\"nodes\".\"policy_id\" = 5)\n16:47:52,001 INFO  [razor.web.api] (http-/0.0.0.0:8150-1) NoMethodError - undefined method `to_edn' for #<Razor::Data::Tag:0x349b41c6>:\norg/jruby/RubyArray.java:2412:in `map'\n/opt/puppet/share/razor-server/vendor/bundle/jruby/1.9/gems/edn-1.0.0/lib/edn/core_ext.rb:53:in `to_edn'\norg/jruby/RubyArray.java:2412:in `map'\n/opt/puppet/share/razor-server/vendor/bundle/jruby/1.9/gems/edn-1.0.0/lib/edn/core_ext.rb:59:in `to_edn'\norg/jruby/RubyHash.java:1337:in `each'\norg/jruby/RubyEnumerable.java:763:in `map'\n/opt/puppet/share/razor-server/vendor/bundle/jruby/1.9/gems/edn-1.0.0/lib/edn/core_ext.rb:59:in `to_edn'\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11479", "fixedVersions": ["RAZOR 1.0"], "id": "11479", "issueType": "Bug", "key": "RAZOR-533", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Fixed", "resolutionDate": "2015-03-30T13:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Policy's tag is not being serialized to hook", "timeSpent": "PT0S", "updated": "2015-03-30T13:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "Will the output of this command show which files the settings are contained in?  i.e. I go to check a setting and see that it's not what I want, from there I can tell what I need to do to rectify the situation?  \n\nWhat are all the possible places the configure Razor?  Is that currently documented?  ", "created": "2015-03-30T14:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100]: +1, I think including the config source is a great idea if it doesn't turn out to be a headache to implement. It'll be a tabular output, I think columns [setting name, value, source] would be good.\n\nThe main sources are:\n- config.yaml (most should come from this)\n- config-defaults.yaml [new]\n- hardcoded (a few settings IIRC drop down to this level if not included)\n- environment variables e.g. RAZOR_CONFIG\n\nEach setting should already be documented as it arises", "created": "2015-03-30T23:18:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "To be created: another ticket to show how to change the settings.", "created": "2015-03-31T15:46:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Removing fix version until this is slotted into sprints ", "created": "2015-12-22T14:32:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This ticket blocks RAZOR-633 due to the safety implications around that ticket. The user will need to know the current settings of the Razor service, reported by the service itself.", "created": "2016-01-22T12:05:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "This should probably have a specification for what the user input/output is.\n\nE.g., along the lines of https://puppet.atlassian.net/browse/PE-9891\n\n[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is that something you can add? [~accountid:557058:67562e3b-e143-430b-8745-78ffb8c5cc23] [~accountid:557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df] is one of you available for defining this/review? ", "created": "2016-02-09T16:12:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] Added.", "created": "2016-02-09T17:21:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "awesome, thanks [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]", "created": "2016-02-09T17:33:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "assigned to [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] to address test failure", "created": "2016-05-02T10:34:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Updated the PR and added a spec test to address the failure.", "created": "2016-05-02T15:01:00.000000"}, {"author": "557058:aac99372-b90d-49df-b809-9e08b5306603", "body": "Tested with: puppet-enterprise-2016.2.0-rc1-108-g22ec158-el-7-x86_64.\n\nInstalled 2016.2.0-rc1-108-g22ec158 on centos7 master.\nInstalled same pe on centos7 node. Signed cert on master, etc.\nClassified node in a group, added pe_razor module.\nRan puppet on that node.\nVerified class params present in the UI. \nChanged protect_new_nodes from true to false.\nRan puppet on the node.\nVerified in the report the change had been made.\nVerified changes in /etc/puppetlabs/razor-server/config-defaults.yaml\nRepeated by changing checkin_interval to 20.\n\nInstalled pe-razor-clent on another node.\nUsed command to verify the change to the config value.\nrazor -u https://centos7node:8151/api --insecure config\nShowed value as unchanged.\nRestarted pe-razor-server on razor server node.\nfrom razor client hit: razor -u https://centos7node:8151/api --insecure config\nVerified values were changed in details from config endpoint.\nAlso queried values independently, and received details.\n\n[NOTE: for posterity, now know I don't need separate nodes for both razor client and server.]", "created": "2016-05-05T14:08:00.000000"}], "components": ["Server"], "created": "2015-03-23T17:49:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@111144d7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyndrz:"}, {"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": "Node Management"}, {"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/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_14677221_*|*_1_*:*_1_*:*_343539542_*|*_10007_*:*_1_*:*_384877484_*|*_10009_*:*_1_*:*_433201249_*|*_5_*:*_2_*:*_691369585_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_169978849_*|*_10004_*:*_1_*:*_6849761603_*|*_10006_*:*_1_*:*_4226584467_*|*_10005_*:*_1_*:*_23334875582"}], "description": "As a PE administrator, I want a single command that will allow me to introspect all of my razor settings, so that I can easily ensure I have configured razor to my expectations.\n\nDebugging Razor currently requires looking in several locations to figure out the exact properties being used by a running Razor server. It would help the debugging process to add a `config` collection that dumps the current configuration settings.\n\n*In Scope*\nDisplay what the settings are as they are now\n\n*Out of Scope*\nDisplaying where the settings are and how to edit them \n\n*API Specification*\nAdd a \"config\" item to the /api/collections endpoint:\n{code:title=GET on /api/collections/config}\n{\"spec\":\"http://api.puppetlabs.com/razor/v1/collections/config\",\"items\":[\n{\"name\":\"config file\", \"value\":\"/etc/puppetlabs/razor-server/config.yaml\"}, \n{\"name\":\"config defaults file\", \"value\":\"/opt/puppetlabs/razor-server/config-defaults.yaml\"}, \n...\n],\"total\":14}\n{code}\n\n*CLI Specification*\n|| Config || Value ||\n| config file | /etc/puppetlabs/razor-server/config.yaml\n| config defaults file | /opt/razor/config-defaults.yaml\n| auth.enabled | false\n| auth.config | /etc/puppetlabs/razor-server/shiro.ini\n| microkernel.debug_level | debug\n| microkernel.kernel_args | nil\n| secure_api | true\n| protect_new_nodes | false\n| match_nodes_on | \\[mac]\n| checkin_interval | 15\n| task_path | tasks\n| repo_store_root | /opt/puppetlabs/server/data/razor-server/repo\n| broker_path | brokers\n| hook_path | hooks\n\nThis omits database_url (for security reasons, as it contains the password) and facts.blacklist, which is quite lengthy and would distort display.\n\nThis should include an `api_config_blacklist` config property which has a list of which properties are hidden from this collection.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11078", "fixedVersions": ["RAZOR 1.3.0"], "id": "11078", "issueType": "Story", "key": "RAZOR-531", "labels": ["stability/usability"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add `razor config` collection to show which settings Razor is using", "timeSpent": "PT0S", "updated": "2016-05-18T14:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/55.", "created": "2015-03-19T22:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit 8cc0e40.", "created": "2015-03-24T17:51:00.000000"}], "components": ["Client"], "created": "2015-03-19T22:42:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4412f3cf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyyav:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_3335572_*|*_1_*:*_1_*:*_808915_*|*_10007_*:*_1_*:*_413730407_*|*_5_*:*_1_*:*_6589755934_*|*_6_*:*_1_*:*_0"}], "description": "The razor server is now supplying certificate information to allow SSL communications. By default, without any override, razor-client's URL to talk to the razor server is https://localhost:8151/api. That's fine, except that the server's certificate doesn't use \"localhost\" as its fqdn, so the razor client cannot authenticate its own certificate.\n\nThe server returns this when you install pe-razor-client then run `razor nodes`:\n\n{noformat}\n# razor nodes\nError: hostname \"localhost\" does not match the server certificate\nTry 'razor --help' for more information\n{noformat}\n\nAs an easy fix, the razor-client shouldn't require verification if the hostname is \"localhost\".", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11601", "fixedVersions": ["RAZOR 1.0"], "id": "11601", "issueType": "Bug", "key": "RAZOR-529", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-03-24T18:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "HTTPS certificate mismatch for localhost", "timeSpent": "PT0S", "updated": "2015-06-09T01:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This was a configuration issue that has since been resolved.", "created": "2015-04-01T20:54:00.000000"}], "components": [], "created": "2015-03-16T12:04:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e4b9f3d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyvov:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1414247220_*|*_5_*:*_1_*:*_35660165664_*|*_6_*:*_1_*:*_0"}], "description": "Looks like it looks to a wrong path for config.yaml file\n\nhttp://jenkins-enterprise.delivery.puppetlabs.net/view/pe-razor-server/view/all/", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11073", "fixedVersions": [], "id": "11073", "issueType": "Bug", "key": "RAZOR-524", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "CI failure: config.yaml does not exist (Centos7 only)", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2015-03-12T16:38:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@62550d45"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xv:"}], "description": "The database schema for Razor sets up two indices on nodes_tags that are the same thing: since `002_create_base_schema` specifies `(node_id, tag_id)` as the pk for the table, the additional index on `(node_id, tag_id)` is redundant (the pk forces creation of such an index already)\n\nIt might be useful for some queries to have the reverse index on `(tag_id, node_id)` instead.\n\n*In Scope*\n * Delete the duplicate \"nodes_tags\" index\n * Create a new index called \"tags_nodes\" on the reverse order of the index {{(tag_id, node_id)}}\n\nCurrent output:\n{code:java}\nrazor=# \\d nodes_tags\n   Table \"public.nodes_tags\"\n Column  |  Type   | Modifiers \n---------+---------+-----------\n node_id | integer | not null\n tag_id  | integer | not null\nIndexes:\n    \"nodes_tags_pkey\" PRIMARY KEY, btree (node_id, tag_id)\n    \"nodes_tags_node_id_tag_id_index\" btree (node_id, tag_id)\nForeign-key constraints:\n    \"nodes_tags_node_id_fkey\" FOREIGN KEY (node_id) REFERENCES nodes(id) ON DELETE CASCADE\n    \"nodes_tags_tag_id_fkey\" FOREIGN KEY (tag_id) REFERENCES tags(id) ON DELETE CASCADE {code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10890", "fixedVersions": [], "id": "10890", "issueType": "Bug", "key": "RAZOR-520", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Duplicate database index on nodes_tags", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/306.", "created": "2015-05-05T02:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit eb06ad0.", "created": "2015-05-08T12:17:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] are you going to be able to test this before the sprint is complete? ", "created": "2015-05-19T10:47:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:3164046c-2b5b-461a-bc0f-f8ad9ef7a8ba] let see if I can get the razor env. up and running tomorrow for the test.\n[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] to test this, I would create a broker with wrong master hostname before provisioning, and then ssh to the razor server to see error message, as well as the errors in razor server logs? Any thing else I need to do?", "created": "2015-05-19T18:49:00.000000"}, {"author": "557058:3164046c-2b5b-461a-bc0f-f8ad9ef7a8ba", "body": "oh, sorry [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] I think you meant to cite [~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] rather than [~accountid:557058:3164046c-2b5b-461a-bc0f-f8ad9ef7a8ba] :)", "created": "2015-05-19T18:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0]: Correct. The common cases which will result in log entries are:\n- Incorrect puppet master URL: \"wget/curl could not download puppet agent installer\"\n- Puppet master cannot handle architecture of new node (e.g. Ubuntu 14.04 without adding the pe_repo): \"failed to run puppet agent installer\"", "created": "2015-05-19T20:51:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "test done.", "created": "2015-06-03T15:30:00.000000"}], "components": ["Server"], "created": "2015-03-12T11:12:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6ada3189"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyosx3:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "19/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_537057437_*|*_1_*:*_1_*:*_1317810335_*|*_10007_*:*_1_*:*_162285318_*|*_3_*:*_1_*:*_1047839470_*|*_5_*:*_1_*:*_3199291395_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1720922838_*|*_10006_*:*_1_*:*_154863468_*|*_10005_*:*_1_*:*_2245918960"}], "description": "If broker execution fails for any reason, it would be good to have a standard way to report that back to the user. Ideally, this would manifest in the form of both an error message when the user SSHs into the machine (and how to rerun the broker) and an error message on the Razor server in the node's log.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11961", "fixedVersions": ["RAZOR 1.0.1"], "id": "11961", "issueType": "Bug", "key": "RAZOR-519", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-06-03T15:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Report to user when broker exits with non-zero exit code", "timeSpent": "PT0S", "updated": "2015-07-10T16:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "We can break this into separate pieces:\n\n* testing that you can inject new drivers\n* expose configuration in razor for how to do this", "created": "2015-03-31T15:44:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "superseded by RAZOR-544 and RAZOR-543", "created": "2015-04-01T17:04:00.000000"}, {"author": "557058:fba4c131-aa30-4295-a1e1-8b3f9398190b", "body": "We were able to do this via the following in build-razor-winpe.ps1:\n\n$driver = join-path $workdir \"ciscoucsnic\"\nadd-windowsdriver -Driver $driver -Path $mount\n\nIdeally, it would be most flexible to have the $workdir be a generic directory", "created": "2015-08-05T14:41:00.000000"}], "components": [], "created": "2015-03-11T17:08: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@26a19dc2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypbfb:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Aug/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1382822393_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_91195716_*|*_10005_*:*_1_*:*_340104439"}], "description": "From [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]:\n{quote}\nUCS blades require special drivers that are not being built into our winpe.wim image (by design; they are not free). From cisco's site, \"As a general rule, installing Windows on a UCS blade requires the addition of drivers to WinPE.wim\".\nIt may be worthwhile to allow users to add extra drivers to the winpe image we generate, so this ticket could be repurposed to that.\n{quote}\n\nAs a PE Administrator, I would like to supply a set of drivers with Razor for my specific Windows hardware so that I can use Razor on my specific Windows infrastructure.\n\n*In Scope*\nAbility to add extra drivers to the WinPE image that Razor generates", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11786", "fixedVersions": ["RAZOR 1.1.0"], "id": "11786", "issueType": "Story", "key": "RAZOR-518", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Won't Fix", "resolutionDate": "2015-04-01T17:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Windows only: razor should allow you to specify additional drivers for winPE", "timeSpent": "PT0S", "updated": "2015-08-05T14:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This will be covered by a README.md standard in each task's folder. Not automatic, but better to have a consistent method for making that information available.", "created": "2015-07-10T01:30:00.000000"}], "components": ["Server"], "created": "2015-03-11T02:42:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42d9d255"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyswf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_10450086449_*|*_6_*:*_1_*:*_0"}], "description": "Some tasks should require certain pieces of metadata in order for a policy to be instantiated to use that task. An example of this is activation keys in RHEL: Ideally the node_metadata would house the activation key, which is then passed to the template for use in a kickstart file. If the user omits this without the requirement, the error will be far down the line after the system begins the provisioning process.\n\nThe required parameters will be declared in the `metadata.yaml` file for the task:\n\n{code}\nos_version: 6\nlabel: Red Hat Enterprise Linux 6\ndescription: Red Hat Generic installer\nboot_sequence:\n  1: boot_install\n  default: boot_local\nnode_metadata:\n  activation_key:\n    description: The activation key for these RHEL nodes\n{code}\n\nThis will be used by the policy, either at creation time or at binding time.\n\nTwo potential issues that could come up with this:\n- (Using the `create-policy`-level approach) If the task changes after the policy is created, the policy might turn out to be invalid. Plus, we have no easy way to show the user how the policy/node/task combination is invalid.\n- (Using the policy-binding-level approach) If the node doesn't have the right metadata, we have no easy way to show this to the user.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10889", "fixedVersions": [], "id": "10889", "issueType": "New Feature", "key": "RAZOR-517", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2015-07-10T01:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Required node_metadata for tasks", "timeSpent": "PT0S", "updated": "2015-07-10T01:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Thanks for pointing that out. I don't have anything set up to generate a largish database like the one you describe", "created": "2015-03-10T10:21:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing since the best practices highlighted by David should quickly decrease the time taken by Razor on database queries.", "created": "2016-03-02T02:20:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Created RAZOR-840 to track documentation work to address this.", "created": "2016-03-02T10:46:00.000000"}], "components": ["Server"], "created": "2015-03-07T12:51:00.000000", "creator": "557058:1a63d6ef-05da-4d39-97bc-0398990aa098", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@d63e855"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyr0v:"}, {"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_*:*_31152500350_*|*_6_*:*_1_*:*_0"}], "description": "Razor's response time to check a node in starts increases as the number of nodes grows - in our environment of of ~800 nodes, this grows to ~50 seconds for a new node to be provisioned.\n\nWe have some scripts that create a policy-per-node (provisioning new virtual machines) and use something along the lines of\n\n{code}\ncurl http://localhost:8080/svc/checkin/$node_id -X POST -d '{...}' # checkin on behalf of node to obviate the microkernel\n{code}\n{code}\nrazor create-tag --name \"$mac\" --rule '[\"=\", [\"fact\", \"macaddress\"], \"'\"$mac\"'\"]' # tag the node by mac address\n{code}\n{code}\n razor create-policy --json ...\n{code}\n\nLooking at what razor is doing from its logs - we see a number of these entries when the new node checks in\n\n{code}\n19:32:20,607 INFO  [razor.sequel] (http-/0.0.0.0:8080-38) (0.001000s) SELECT * FROM \"nodes\" WHERE (\"name\" = 'node2077') LIMIT 1\n19:32:20,609 INFO  [razor.sequel] (http-/0.0.0.0:8080-38) (0.001000s) SELECT * FROM \"policies\" WHERE (\"id\" = 2054) ORDER BY \"rule_number\" LIMIT 1\n19:32:20,613 INFO  [razor.sequel] (http-/0.0.0.0:8080-38) (0.001000s) SELECT \"tags\".* FROM \"tags\" INNER JOIN \"nodes_tags\" ON ((\"nodes_tags\".\"tag_id\" = \"tags\".\"id\") AND (\"nodes_tags\".\"node_id\" = 2077))\n...\n{code}\n\nand it appears that razor has to do this for every node it knows about (a row by row scan of the nodes table followed by 2 separate lookups to the policies and tags tables for that node).\n\nSome guidance on scaling razor for these large environments would be much appreciated.", "environment": "razor 0.15", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11068", "fixedVersions": [], "id": "11068", "issueType": "Improvement", "key": "RAZOR-516", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:1a63d6ef-05da-4d39-97bc-0398990aa098", "resolution": "Won't Fix", "resolutionDate": "2016-03-02T02:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor checkin times slow down when scaled up", "timeSpent": "PT0S", "updated": "2016-03-02T10:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit e5e393c.", "created": "2015-03-07T00:09:00.000000"}], "components": ["Client"], "created": "2015-03-07T00:07:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@344f0f10"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyr07:"}, {"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_*:*_106709_*|*_5_*:*_1_*:*_8121976661_*|*_6_*:*_1_*:*_0"}], "description": "The client, when displaying short error messages (< 50 characters) is throwing this error:\n\n{code}\nError: can't convert nil into String\n{code}\n\nBecause of this line:\n\n{code}\nobj['msg'][0..50] + ('...' if obj['msg'].size > 50) if obj['msg']\n{code}\n\n`String + nil` results in an error.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11877", "fixedVersions": ["RAZOR 1.0"], "id": "11877", "issueType": "Bug", "key": "RAZOR-515", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-03-07T00:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Short event messages generating error", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit e978989. Closing.", "created": "2015-03-06T18:24:00.000000"}], "components": [], "created": "2015-03-06T13:44:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67807387"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyqkv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "07/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_16815555_*|*_6_*:*_1_*:*_0"}], "description": "Current doc/api.md has:\n+`curl https://user:password@razor-server:8151/api/microkernel/bootstrap?nic_max=4&http_port=8150`\n\nThis command will result in certificate errors because missing -k, and it's weird that the -k has to be right after curl to get it works properly. In addition, '&' cannot be passed in the command line string, so the \"https://user:password@razor-server:8151/api/microkernel/bootstrap?nic_max=4&http_port=8150\" string has to be in quotes.\n\nSomething like below:\n# curl -k 'https://razor-server-1.delivery.puppetlabs.net:8151/api/microkernel/bootstrap?nic_max=1&http_port=8150'", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10888", "fixedVersions": ["RAZOR 1.0"], "id": "10888", "issueType": "Bug", "key": "RAZOR-514", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Fixed", "resolutionDate": "2015-03-06T18:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "doc/api.md needs to be updated to get correct bootstrap generating curl cli", "timeSpent": "PT0S", "updated": "2015-06-04T13:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/283.\n\nFixed in razor-server commit b38a4e2.", "created": "2015-03-13T20:31:00.000000"}], "components": [], "created": "2015-03-04T17:36:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7d864e72"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyypbb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_784488353_*|*_10009_*:*_1_*:*_10213023016_*|*_6_*:*_1_*:*_0"}], "description": "Razor::Data::Node.canonicalize_hw_info gsubs ':' for '-' for mac addresses in hw_info['mac'] but not for macs supplied as hw_info['netN'].", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11431", "fixedVersions": [], "id": "11431", "issueType": "Bug", "key": "RAZOR-513", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Fixed", "resolutionDate": "2015-07-10T01:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Inconsistant handling of MAC addresses", "timeSpent": "PT0S", "updated": "2015-07-10T01:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I like the idea. Could you describe in a little more detail what that would be used for ?\n\nIn particular, what should the connection to the rest of Razor be (e.g., would it need to get input and send back output in a similar way as hooks do) ? I am not sure if there is much value if it's just a wy to run a script through Razor's REST API .. but if there's a closer connection, I can see how this would be quite powerful.", "created": "2015-02-27T15:19:00.000000"}, {"author": "623c12047910a200718b9434", "body": "My initial thought was that they would be just as powerful as the commands in /opt/razor/lib/commands/.  This would obviously mean that they would be able to access for example Razor::Data::Node and get/modify/remove instances and whatnot.\n\nFor me, I'm creating a web interface that is a static javascript interface that I drop into /opt/razor/public.  The interface then interacts with the razor API directly.  The next step is to add tools to the interface to create VMs, with metadata, in one step from the interface.  Obviously, being static content out of /public, the interface would have to directly interact with the VM platform which creates issues both in terms of connectivity and cross site security issues.  So my plan was to implement a create-vm command in razor to implement the interaction with the vm platform, and push the metadata onto the node.\n\nHaving talked to Scott, the sort of power that would be in the users hands, would probably create all sorts of support issues.  I can achieve what I need by actually adding the command into /opt/razor/lib/commands/ (meaning I'd kiss away any support, but thats probably OK).  As opposed to adding this as a \"feature\" and endorsing the use of custom commands, creating a support obligation.", "created": "2015-02-27T16:58:00.000000"}], "components": [], "created": "2015-02-26T19:18:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5793e500"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyylyf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_38002902145_*|*_6_*:*_1_*:*_0"}], "description": "Consider loading commands from, say, /etc/razor/commands in addition to the standard location allowing people to add custom commands.\n\nA use case may be to add custom commands connects to a VM platform and creates/manages a vm.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11552", "fixedVersions": [], "id": "11552", "issueType": "New Feature", "key": "RAZOR-505", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Won't Fix", "resolutionDate": "2016-05-11T16:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow custom api extensions via custom commands", "timeSpent": "PT0S", "updated": "2016-05-11T16:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is this still an issue?", "created": "2015-03-10T15:58:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "got it, thanks!", "created": "2015-03-11T09:34:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The work for this has been consumed by https://puppet.atlassian.net/browse/RAZOR-547.", "created": "2015-04-03T11:26:00.000000"}], "components": [], "created": "2015-02-25T14:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ecbbf2f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxurj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"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_*:*_1126223952_*|*_3_*:*_1_*:*_216492389_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_461819340_*|*_10005_*:*_1_*:*_1379059387"}], "description": "The puppetlabs-razor module seems out of date/broken.\n\nInstalling this on a Centos 7 node yields this error:\n\n{noformat}\nError: Could not start Service[razor-server]: Execution of '/usr/bin/systemctl start razor-server' returned 1: Job for razor-server.service failed. See 'systemctl status razor-server.service' and 'journalctl -xn' for details.\nWrapped exception:\nExecution of '/usr/bin/systemctl start razor-server' returned 1: Job for razor-server.service failed. See 'systemctl status razor-server.service' and 'journalctl -xn' for details.\nError: /Stage[main]/Razor::Torquebox/Service[razor-server]/ensure: change from stopped to running failed: Could not start Service[razor-server]: Execution of '/usr/bin/systemctl start razor-server' returned 1: Job for razor-server.service failed. See 'systemctl status razor-server.service' and 'journalctl -xn' for details.\n{noformat}\n\nDigging a bit more, it looks like some conflict causing the /var/run/razor-server.pid file not to be created.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10887", "fixedVersions": [], "id": "10887", "issueType": "Bug", "key": "RAZOR-501", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2015-04-03T11:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update puppetlabs-razor module", "timeSpent": "PT0S", "updated": "2015-06-04T14:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "We'll handle this using the `like` function, allowing a regex to perform the comparison. Will that be sufficient to cover the use case, [~accountid:5baac4f0b9665979c55882f7]?\n\nI've submitted an updated PR for this here: https://github.com/puppetlabs/razor-server/pull/287", "created": "2015-03-11T02:11:00.000000"}, {"author": "5baac4f0b9665979c55882f7", "body": "Hi Scott,\n\nHow would I use this to create a tag for a MAC address range like ff:ff:ff:01:00:00 to ff:ff:ff:01:3c:00?\n\nThanks,\n\nAlex", "created": "2015-03-11T08:22:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "At a glance, this could be something like:\n\n{code}\nff:ff:ff:01:([0-2].:..|3[0-9a-b]:..|3c:00)\n{code}\n\nSo the full create-tag would be (untested):\n\n{code}\nrazor create-tag --name test --rule '[\"like\", [\"str\", [\"fact\", \"macaddress\"]], \"ff:ff:ff:01:([0-2].:..|3[0-9a-b]:..|3c:00)\"]'\n{code}\n\nNot entirely as elegant as could be, but that approach should get the job done. We're targeting this fix for after general availability.", "created": "2015-03-17T02:07:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:5baac4f0b9665979c55882f7]: Will the above solution solve your use case? We are about to move forward with this fix via [this PR|https://github.com/puppetlabs/razor-server/pull/287].", "created": "2015-07-08T18:21:00.000000"}, {"author": "5baac4f0b9665979c55882f7", "body": "Hi Scott,\n\nYes, this should work just fine. Thanks,\n\nAlex", "created": "2015-07-08T20:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/287.", "created": "2015-07-09T17:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 8685416.", "created": "2015-07-10T16:16:00.000000"}], "components": ["Server"], "created": "2015-02-25T13:08:00.000000", "creator": "5baac4f0b9665979c55882f7", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@742e73e5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"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": "High"}, {"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|hyojzj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_237295827_*|*_1_*:*_1_*:*_10893874848_*|*_10007_*:*_1_*:*_80773622_*|*_10009_*:*_1_*:*_345125_*|*_5_*:*_1_*:*_8920522109_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1989030472_*|*_10006_*:*_1_*:*_697076563"}], "description": "Currently, there's no way in Razor Server to match a node against a MAC address range. Only a list of MAC addresses can be matched against. This is  most definitely not scalable. We could have MAC ranges with thousands of possible nodes, so matching against a list just isn't tenable.\n\nPlease add functionality to match against a range of MAC addresses.\n\nCurrently, >, <, >= and <= only work against numeric values.\n\nThis is a pretty big deal for us here at Nike.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11189", "fixedVersions": ["RAZOR 1.1.0"], "id": "11189", "issueType": "New Feature", "key": "RAZOR-500", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5baac4f0b9665979c55882f7", "resolution": "Fixed", "resolutionDate": "2015-08-05T10:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add ability to match on a range of MAC adddresses", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12047910a200718b9434", "body": "Posted PR https://github.com/puppetlabs/razor-server/pull/279\n", "created": "2015-02-24T20:24:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 504e666.", "created": "2015-03-13T20:30:00.000000"}], "components": ["Server"], "created": "2015-02-24T17:37:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1cea5c8e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyykkv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1475496254_*|*_10009_*:*_1_*:*_23384955886_*|*_6_*:*_1_*:*_0"}], "description": "Facter now provides structured facts, metadata should probably also.\n\nThe specific use case i have in mind here is using it to specify disk partition layout e.g:\n{noformat}\n---\n  disks:\n    sda:\n      - { type: ext4, mount: /boot, size: 500, grow: false }\n      - { type: ext4, mount: /, size: 1, grow: true }\n    sdb:\n      - { type: ext4, mount: /srv, size: 1, grow: true }\n{noformat}\n\nCurrently, probably wont help in matchers (I believe there is another ticket regarding support of structured facts), but will be usable in tasks out of the box.\n\nIt could be accessed in tasks like:\n{noformat}\n<% node.metadata['disks']['sda'].each do |part| %>\n  ...\n<% end %>\n{noformat}\n    ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11783", "fixedVersions": ["RAZOR 1.0.1"], "id": "11783", "issueType": "New Feature", "key": "RAZOR-499", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Fixed", "resolutionDate": "2015-12-09T11:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support structured data as metadata values", "timeSpent": "PT0S", "updated": "2015-12-09T11:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "More specific errors should be in the server log. If the issue is with the server state (which it is in this case), the error should not be reported to the client, but instead be reported in the server log.\n\nI would expect to see a `Razor::InvalidConfigurationError` with an error message: \"The configuration file %\\{filename\\} is not readable\".", "created": "2015-02-24T13:21:00.000000"}], "components": [], "created": "2015-02-24T12:13:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d8a850f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"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|hyyk8n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_98207920_*|*_6_*:*_1_*:*_0"}], "description": "Attempted to create a hook with below corrupted json file:\n{code}\nconfigurationFile =<<-EOF\n---\nvalue:\nTHIS IS A CORRUPTED CONFIGURATION.YAML FILE\n  description: \"The current value of the hook\"\n  default: 0\nfoo:\nEOF\n{code}\n\nExpected behavior:\n razor server should have validated the configuration.yaml file and throw more specific errors related to the the yaml file format, for example just say the json file is not valid.\n\nActual behavior:\nRazor throws 500 Internal Server Error as below:\n{code}\nrazor-server-1 09:40:14$ razor -u http://razor-server-1:8080/api create-hook --name hookName1 --hook-type hook_type_1 --c value=5 --c foo=newFoo --c bar=newBar\nError from doing POST http://razor-server-1:8080/api/commands/create-hook\n500 Internal Server Error\n<h1>Internal Server Error</h1>\n{code}\n\nShould it be more validation added to https://github.com/puppetlabs/razor-server/blob/master/spec/config_spec.rb?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11875", "fixedVersions": ["RAZOR 1.0"], "id": "11875", "issueType": "Bug", "key": "RAZOR-498", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Won't Fix", "resolutionDate": "2015-02-25T15:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "create-hook with corrupted configuration.yaml file results in 500 internal error", "timeSpent": "PT0S", "updated": "2015-02-25T15:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "I added a new page here: http://docspreview1.puppetlabs.lan/pe/latest/razor_secure_apis.html\n\n", "created": "2015-03-10T09:45:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] minor spelling fix to http://docspreview1.puppetlabs.lan/pe/latest/razor_secure_apis.html\n\n{quote}\nConfigure You Razor Server\n{quote}\n\nto\nConfigure Your Razor Server", "created": "2015-03-10T12:34:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] those SSL instructions are for Open Source users only - I believe this is set up by default in PE without the user needing to do anything. [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can confirm.", "created": "2015-03-10T12:35:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Should have read the story more closely. Shoot. [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] In this case, I will revise the api section of the reference page.", "created": "2015-03-11T07:56:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "I updated this page: http://docspreview1.puppetlabs.lan/pe/latest/razor_reference.html\n\nwith new base URL for calls, updated API and SVC sections. ", "created": "2015-03-11T09:08:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Thanks [~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]! And just to clarify - that reference information is for PE only?", "created": "2015-03-11T09:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: \"Therefore, for /svc namespace messages, use the base URL ...\" \u2014 We don't expect users to ever use the /svc namespace, that's intended exclusively for our usage. They may need to reference the /svc base URL when building e.g. winpe for installing Windows.", "created": "2015-03-11T11:21:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: The two IDs returned by collections should also use the 8151 port:\n\n\"id\": \"http://localhost:8150/api/collections/objects/14\"\n\nShould be:\n\n\"id\": \"https://localhost:8151/api/collections/objects/14\"\n\nThose two \"spec\" strings shouldn't have the port, just use this for those two instances:\n\n\"http://api.puppetlabs.com/razor/v1/collections/tags/member\"\n\n(Note that this \"spec\" string is not intended to be a real URL, but merely a general indicator of the type of object.)", "created": "2015-03-11T11:27:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: +1 after those changes ^^ are made.", "created": "2015-03-11T11:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: Oh, as your note said earlier, http://docspreview1.puppetlabs.lan/pe/latest/razor_secure_apis.html will require changes too, since we include SSL by default if the node is managed by the same puppet master. It might be worth documenting what the user should do if they are running `razor` on a non-puppet master-managed node. In that case, the `razor` calls can either use the RAZOR_CA_FILE environment variable to use a CA that trusts either the puppet master or the razor server, or they can just use `-k` as an argument to `razor` to bypass certificate verification.", "created": "2015-03-11T11:32:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Okay. I updated these pages with this info:\n\nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_secure_apis.html - Added new intro to indicate that this is all set up by default for PE users with Razor running on Puppet-managed nodes. Also fixed the typo Moses pointed out in the header, and reworded to say that users should verify that secure_api is set to yes.\n\nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_reference.html - removed the line about the /svc URL and updated ID and Spec in two spots under \"Collections\".\n\nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_windows_install.html#setting-up-a-windows-installation - added -razorurl to step four in this section. \n\nI think that covers it. I can make further tweaks as needed, but doubtful it will happen before the planning meeting today.\n\n\n", "created": "2015-03-11T14:43:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: \"there are no existing security considerations in place\" + \" for the early stages of provisioning\"\n\n\"Self-sign a certificate. There are several ways to do this\" => Self-sign a certificate or use your own \".jks\" or \".ks\" file. There are several ways to self-sign your own certificate\"\n\n\"Add a web connector for HTTPS\" + \" that uses the .jks/.ks file from the previous step\"\n\n\"permanent location for the keystore.jks file\" => \"permanent location for the keystore.jks or other .jks/.ks file\"\n\nAfter these things, looks good to merge.", "created": "2015-03-11T15:22:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Ping [~accountid:557058:43c81f8c-ae3f-46d9-84b0-c9c65e1da709] - per conversation in our sprint planning you might be able to help out with this? Just realized [~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] is on vacation..", "created": "2015-03-11T15:41:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "These changes are now in. http://docspreview1.puppetlabs.lan/pe/latest/razor_secure_apis.html\n\n", "created": "2015-03-11T16:20:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "confirmed the changes are in.", "created": "2015-03-11T17:04:00.000000"}], "components": [], "created": "2015-02-24T10:28: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@5794f1d4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyk27:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_871779693_*|*_3_*:*_1_*:*_331597126_*|*_10009_*:*_1_*:*_92848560_*|*_5_*:*_1_*:*_7719093834_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_19922158"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11242", "fixedVersions": ["RAZOR 1.0"], "id": "11242", "issueType": "Sub-task", "key": "RAZOR-497", "labels": [], "originalEstimate": "PT0S", "parent": "11240", "parentSummary": "Ability to configure razor-server to expect SSL/HTTPS API communications ", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2015-03-11T17:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "documentation for razor-487 (ability to configure razor to use SSL)", "timeSpent": "PT0S", "updated": "2015-06-09T01:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "it is expected behavior", "created": "2015-02-24T12:27:00.000000"}], "components": [], "created": "2015-02-23T18:47:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@53594392"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyjnr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_63608202_*|*_6_*:*_1_*:*_0"}], "description": "Attempt to delete a non-existing hook.\n\nExpected: exit code should be 1\nActual: Exit code is zero as below:\n{code}\nrazor-server-1 17:39:02$ razor delete-hook --name non-existing-hook\nFrom http://localhost:8080/api:\n\n   result: no changes; hook non-existing-hook does not exist\n  command: http://localhost:8080/api/collections/commands/110\n\nrazor-server-1 executed in 0.57 seconds\n#<Beaker::Host::CommandFailure: Host 'razor-server-1' \nexited with 0 \n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11427", "fixedVersions": ["RAZOR 1.0"], "id": "11427", "issueType": "Bug", "key": "RAZOR-496", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Won't Fix", "resolutionDate": "2015-02-24T12:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "delete-hook with non-existing-hook exit with 0", "timeSpent": "PT0S", "updated": "2015-02-24T12:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The input.json file is a red herring. I'm going to rename it to sample-input.json so its purpose as purely sample data is clear. There is no meaningful input.json file with hooks.", "created": "2015-02-20T13:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "{quote}\n1. How to use Event Scripts and give some examples\n2. How to use Node Events and give some examples\n{quote}\nThese two are practically the same (Node Events is a subset of Event Scripts), and the hooks.md document includes examples.\n\n{quote}\n3. How to use the available events: node-registered, node-bound-to-policy, node-deleted, node-booted, node-facts-changed, node-install-finished.\n{quote}\nThese events are all explained in the \"Available Events\" section (I will move this under the \"Event Scripts\" section for better organization). They are used the same way, but triggered at different times.", "created": "2015-02-20T17:20:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I'll rework the documentation to make it clearer that configuration is a completely optional concept. Hooks can exist and have value without any configuration, meaning no configuration.yaml.", "created": "2015-02-20T17:23:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/278.", "created": "2015-02-20T18:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Assigning to [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] for review.", "created": "2015-02-20T18:28:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "done reviewing, +1", "created": "2015-02-25T16:09:00.000000"}], "components": [], "created": "2015-02-20T12:02:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4cc7c328"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyikf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_23118301_*|*_10007_*:*_1_*:*_424022059_*|*_5_*:*_1_*:*_8928046648_*|*_6_*:*_1_*:*_0"}], "description": "https://github.com/puppetlabs/razor-server/blob/master/doc/hooks.md\n\nThe document should be updated to include more details on:\n\n1. How to use Event Scripts and give some examples\n2. How to use Node Events and give some examples\n3. How to use the available events: node-registered, node-bound-to-policy, node-deleted, node-booted, node-facts-changed, node-install-finished.\nI see an example of https://github.com/puppetlabs/pe-razor-server/blob/4.0.x/hooks/counter.hook/node-bound-to-policy but not sure what need to modify for the event. \n\nAs far as I understand, to create a hook I have to do these steps:\n - creating Hooks/hook-type-1.hook directory\n - in hook-type1.hook, create configuration.yaml file\n - run create-hook command that has hook-type = hook-type-1\n\nBut I am not sure how user can utilize the available events. Can a user just create input.json file in the same folder with the configuration.yaml file. In that input.json file user put a specific node information, without creating any other script, when the node is registered to razor, bound to a policy, boot, deleted...hook will report the activities? via /var/log/pe-razor-server/server.log?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10886", "fixedVersions": ["RAZOR 1.0"], "id": "10886", "issueType": "Bug", "key": "RAZOR-493", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Fixed", "resolutionDate": "2015-02-25T16:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "hooks.md doc should be updated", "timeSpent": "PT0S", "updated": "2015-06-09T01:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The `update-hook-configuration` command was added via RAZOR-388.", "created": "2015-04-24T12:07:00.000000"}], "components": [], "created": "2015-02-20T11:29:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@75dc8261"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyyihr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "24/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5441859008_*|*_6_*:*_1_*:*_0"}], "description": "Currently, to update an configuration property of a hook, user has to delete the hook and recreate it with new configuration values. This is not a very good way.\n\n-It would be better  if there is a new --update attribute in create-hook command allowing user to update  hook configuration values-\nEDIT: I think an `update-hook-configuration` command would be sufficient.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11782", "fixedVersions": ["RAZOR 1.1.0"], "id": "11782", "issueType": "Bug", "key": "RAZOR-492", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Duplicate", "resolutionDate": "2015-04-24T12:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor should be able to update Hook properties without recreating new hook", "timeSpent": "PT0S", "updated": "2015-04-24T12:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-02-11T18:58: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@5b6d952"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyycvr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_59119340_*|*_3_*:*_1_*:*_435668229_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11598", "fixedVersions": ["RAZOR 1.0"], "id": "11598", "issueType": "Sub-task", "key": "RAZOR-490", "labels": [], "originalEstimate": "PT0S", "parent": "11716", "parentSummary": "Ability to optionally configure iPXE for SSL", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Won't Fix", "resolutionDate": "2015-02-17T12:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "development efforts for ability to optionally configure iPXE for SSL", "timeSpent": "PT0S", "updated": "2015-02-17T12:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": [], "created": "2015-02-11T18:58: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@8e43a9d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyycvj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_494793041_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11551", "fixedVersions": ["RAZOR 1.0"], "id": "11551", "issueType": "Sub-task", "key": "RAZOR-489", "labels": [], "originalEstimate": "PT0S", "parent": "11716", "parentSummary": "Ability to optionally configure iPXE for SSL", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Won't Fix", "resolutionDate": "2015-02-17T12:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "QA work for ability to configure iPXE for SSL", "timeSpent": "PT0S", "updated": "2015-02-17T12:24:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you estimate the story points for this issue? ", "created": "2015-02-11T13:02:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Estimated 5 points for dev.", "created": "2015-02-11T15:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by:\nrazor-server: https://github.com/puppetlabs/razor-server/pull/277\nrazor-client: https://github.com/puppetlabs/razor-client/pull/53\npe_razor: https://github.com/puppetlabs/puppetlabs-pe_razor/pull/12", "created": "2015-02-19T19:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in:\n- razor-server commit cc48604\n- razor-client commit 47044ee\n- puppetlabs-pe_razor commit ca9bf7c", "created": "2015-02-26T17:01:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Follow-up work for `http_port` and bootstrap generation tracked by https://github.com/puppetlabs/razor-server/pull/282.", "created": "2015-03-04T15:23:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Follow-up work fixed in razor-server commit 8c55882.", "created": "2015-03-04T15:49:00.000000"}], "components": [], "created": "2015-02-11T13:01:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "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": "* A user can configure Razor API calls to accept only HTTPS communications \n* Communications for a PE User will be HTTPS by default, using the Puppet CA\n"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1815582b"}, {"fieldName": "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": "RAZOR-435"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyp46f:"}, {"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": "Further Decomposing previous story resulted in this"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_79648382_*|*_1_*:*_1_*:*_516382970_*|*_10007_*:*_1_*:*_596722847_*|*_3_*:*_1_*:*_197295128_*|*_10009_*:*_1_*:*_428301617_*|*_5_*:*_1_*:*_7719084496_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_611806586"}], "description": "This story is to track the implementation of a configuration parameter in Razor Server to toggle whether HTTPS is forced. When set for HTTPS, Razor Server will expect encrypted communications, leveraging a certificate. In PE, this certificate will be the Puppet CA Certificate by default.\n\nThis will use port 8150 for HTTP and 8151 for HTTPS, per discussion in RAZOR-345.\n\n*In Scope*\n* Configuration parameter in Razor Server for requiring SSL communications over the API (`secure_api`)\n* Configuration parameter should be YES (encrypted) by default for PE (this will be set by the pe_razor module)\n* razor-server will use the Puppet CA Certificate by default\n* Configuration parameter should be NO (unencrypted) by default for FOSS\n* Documented process for FOSS users for enabling encrypted communication to the API using their own certificate\n* razor-client can reference the puppet master CA, to prevent insecure communication errors (free verification)", "epicLinkSummary": "SSL for Razor Coms", "estimate": "PT0S", "externalId": "11240", "fixedVersions": ["RAZOR 1.0"], "id": "11240", "issueType": "Story", "key": "RAZOR-487", "labels": [], "originalEstimate": "PT0S", "parent": "11022", "parentSummary": "SSL for Razor Coms", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Fixed", "resolutionDate": "2015-03-11T17:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ability to configure razor-server to expect SSL/HTTPS API communications ", "timeSpent": "PT0S", "updated": "2015-06-09T01:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Ping [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can your review and estimate points?", "created": "2015-02-11T12:53:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Ping [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] can you review and determine QA estimate?", "created": "2015-02-11T13:20:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] how complicate to config and enable SSL communication with iPXE on razor-server? \n[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c]: if the configuration is not too much complicated and we can use available tool like wireshark to validate SSL communication, I will set 1 story point for QA", "created": "2015-02-11T13:47:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c]: 2 points for development.\n\n[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0]: Testing this will consist of changing that config option, referencing a valid CA certificate (if we have these available for testing), updating the bootstrap.ipxe on the tftp server to whatever the new version will be, then verifying that https communication works when the node boots. The difficult part is getting a valid CA-signed certificate for testing.", "created": "2015-02-11T15:13:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Given the uncertainty around testing, I'll mark this as a 5 instead of 3 (increased scope due to possible unknown requirements).", "created": "2015-02-11T18:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this ticket as iPXE security requires network-level security anyway.", "created": "2015-02-17T12:26:00.000000"}], "components": [], "created": "2015-02-11T12:53:00.000000", "creator": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "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": "A user can configure communications with iPXE to happen over HTTPS by providing their own trusted certificate."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6fc0f21f"}, {"fieldName": "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": "RAZOR-435"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyycen:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_21842767_*|*_3_*:*_1_*:*_77758_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_59152434_*|*_10005_*:*_2_*:*_435621701"}], "description": "Due to technical constraints, iPXE has proven infeasible to configure for SSL communications by default in Razor without an accompanying \"official\" certificate from one of the primary certificate authorities (Thawte, etc), as these are the certs that are embedded in iPXE by default. We cannot rely on the self-signed Puppet CA cert without embedding it in an iPXE image, which means creating custom iPXE images at a customer site. The cost and poor experience for the user does not justify the security tradeoff here.\n\nThis story is to track the creation and documentation of a process for configuring iPXE communications with razor-server to happen over SSL, using a cert from an official trusted CA. Customers can optionally decide to use this, after purchasing such a certificate. HTTPS will be disabled by default\n\n*In Scope*\n* A configuration option in razor-server to enable SSL communications with iPXE\n*A documented process for customers to enable SSL communications, with their own certificate. The process should include a link to a list of trusted certificates (the ones embedded by iPXE)\n\n*Out of Scope*\nAutomatic configuration of SSL for iPXE\n", "epicLinkSummary": "SSL for Razor Coms", "estimate": "PT0S", "externalId": "11716", "fixedVersions": ["RAZOR 1.0"], "id": "11716", "issueType": "Story", "key": "RAZOR-486", "labels": [], "originalEstimate": "PT0S", "parent": "11022", "parentSummary": "SSL for Razor Coms", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "resolution": "Won't Fix", "resolutionDate": "2015-02-17T12:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ability to optionally configure iPXE for SSL", "timeSpent": "PT0S", "updated": "2015-02-17T12:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [], "components": ["DOCS", "Server"], "created": "2015-02-11T12:28:00.000000", "creator": "623c0ad4d32a94006a6494f3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@523ad732"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyycdr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_81150338_*|*_10009_*:*_1_*:*_3300835_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_117403_*|*_10005_*:*_1_*:*_1136100601"}], "description": "The Windows installer currently assumes that the freshly installed drive is in D: when setting the broker to run. This may not always be the case (sometimes E). \n\nPer RAZOR-484 we will generalize how the drive letter of the new OS is determined. In the meantime, the default should be documented.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11066", "fixedVersions": ["RAZOR 1.0"], "id": "11066", "issueType": "Sub-task", "key": "RAZOR-485", "labels": [], "originalEstimate": "PT0S", "parent": "11027", "parentSummary": "Windows task cannot find broker to run", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c0ad4d32a94006a6494f3", "resolution": "Fixed", "resolutionDate": "2015-02-25T15:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Document the default drive letter for a new Windows OS (D:)", "timeSpent": "PT0S", "updated": "2015-02-25T15:33:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:5ac1297a-557f-49f7-81aa-4e02cf450249", "body": "Modified to pull osdevice drive letter from OSLOADER BCD entry using BCDedit", "created": "2015-04-28T07:31:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/305.\n\nFixed in razor-server commit 9e180d1.", "created": "2015-05-08T12:39:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] does this need to be handed off to [~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0]?", "created": "2015-07-06T20:13:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c]: Yes it does. [~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0]: Can you see about testing this? I have seen an issue about the bcdedit command which may be confined to the new 2008R2 task I am writing, but would like to find out whether that the issue is present in 2012R2 and 8-pro as well.", "created": "2015-07-07T17:39:00.000000"}, {"author": "557058:db3c8c5c-5825-4424-a788-64c2fa922e24", "body": "This is fixed in the Puppet Enterprise 2015.2.1 patch release and will be fixed in the next 3.8 patch release, 3.8.3.", "created": "2015-10-09T12:44:00.000000"}], "components": ["Server"], "created": "2015-02-11T11:47:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@20969e8b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "QA Highest Test Level", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Unit"}, {"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": "Medium"}, {"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|hyycav:"}, {"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": "Node Management Services"}, {"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/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_535716195_*|*_1_*:*_2_*:*_6616289600_*|*_3_*:*_1_*:*_813685707_*|*_5_*:*_1_*:*_17008149721_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_14949200115"}], "description": "The Windows installer currently assumes that the freshly installed drive is in WinPE's D: (not to be confused with the logical C: drive when booted into the installed OS) when setting the broker to run. This may not always be the case (sometimes E:\\), so this location should be generalized by calculating it.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11715", "fixedVersions": ["RAZOR 1.1.0"], "id": "11715", "issueType": "Improvement", "key": "RAZOR-484", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Generalize how Windows install finds drive letter", "timeSpent": "PT0S", "updated": "2016-05-18T14:31:00.000000", "votes": "2", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The `all` argument has been removed from this command per RAZOR-364.", "created": "2015-02-12T17:16:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "No 'all' attr will be available", "created": "2015-02-17T15:40:00.000000"}], "components": [], "created": "2015-02-10T16:39:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3148cd49"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyybgn:"}, {"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_*:*_601273424_*|*_6_*:*_1_*:*_0"}], "description": "Execute command 'razor update-node-metadata --help'\nExpected behavior:\nAll attributes of the command must be displayed\n(https://github.com/puppetlabs/pe-razor-server/blob/a1affc29ae5da65cf48f2d9d742e0b0c729cbca6/lib/razor/command/update_node_metadata.rb)\n\nActual behavior:\nMissing \"all\" attribute as below output:\n\n{code}\nPhongs-MacBook-Pro:json phongly$ razor update-node-metadata --help\nFrom http://razor-server-1.delivery.puppetlabs.net:8080/api:\n\n# SYNOPSIS\nUpdate one key in a nodes metadata\n\n# DESCRIPTION\nThis is a shortcut to `modify-node-metadata` that allows for updating or\nadding a single key, in a simpler form than the full\nediting language.\n# Access Control\n\nThis command's access control pattern: `commands:update-node-metadata:%{node}`\n\nWords surrounded by `%{...}` are substitutions from the input data: typically\nthe name of the object being modified, or some other critical detail, these\nallow roles to be granted partial access to modify the system.\n\nFor more detail on how the permission strings are structured and work, you can\nsee the [Shiro Permissions documentation][shiro].  That pattern is expanded\nand then a permission check applied to it, before the command is authorized.\n\nThese checks only apply if security is enabled in the Razor configuration\nfile; on this server security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n# Attributes\n\n * node\n   - The node for which to update metadata.\n   - This attribute is required.\n   - It must be of type string.\n   - It must match the name of an existing node.\n\n * key\n   - The key to change in the metadata.\n   - This attribute is required.\n   - It must be of type string.\n   - It must be between 1 and Infinity in length.\n\n * value\n   - The value for the metadata.\n   - This attribute is required.\n\n * no-replace\n   - If true, it is an error to try to change an existing key\n   - It must be of type boolean.\n\n# EXAMPLES\n\n  Set a single key from a node:\n  \n  {\"node\": \"node1\", \"key\": \"my_key\", \"value\": \"twelve\"}\n\nPhongs-MacBook-Pro:json phongly$\n{code}\n\n\n", "environment": "Phongs-MacBook-Pro:json phongly$ razor --version\nRazor Server version: 0.16.1.0\nRazor Client version: 0.15.2.2", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10884", "fixedVersions": ["RAZOR 1.0"], "id": "10884", "issueType": "Bug", "key": "RAZOR-483", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Won't Fix", "resolutionDate": "2015-02-17T15:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "update-node-metadata --help does not show \"all\" atrribute", "timeSpent": "PT0S", "updated": "2015-02-17T15:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c124294742a00683e417a", "body": "We eliminated this as an issue by using a generic name inside all of our WinPE images. Instead of specifying an IP address of the local razor instance, we relied on the fact that each WinPE image is setting it's local DNS server to the DNSMASQ instance running on the razor server. We have a razor instance in each of our datacenters kept synced with a git repo.\n\nBy creating a file \"hosts.spoof\" inside dnsmasq, I can create a DNS entry that responds to \"myrazorserver.local\" appropriately for the razor instance in the datacenter it booted from.\n\nSo in the PEBuilder, instead of using \"http://10.5.7.12\", I can say \"$baseurl = \"http://myrazorserver.local:8150/svc\"\" and run that image in any datacenter. So whatever razor instance this server PXE booted from, will respond with the IP of itself automagically.\n\n\u00a0\n{{[steve@RAZOR01 tasks]$ }}{{cat}} {{/etc/dnsmasq}}{{.d}}{{/hosts}}{{.spoof}}\n{{10.5.7.12\u00a0\u00a0\u00a0\u00a0 myrazorserver\u00a0\u00a0 myrazorserver.}}{{local}}\n{{}}\n{{}}", "created": "2019-02-05T11:07:00.000000"}], "components": [], "created": "2015-01-29T13:07:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "Generate WinPE image without supplying razorurl\nRun the bcdedit command on a BCD file to set Razor URL\nMove BCD file to Razor server\nRun install of Windows machine\nWinPE reaches Razor server using registry entry"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@70454deb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:x"}, {"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": "05/Feb/19"}], "description": "As a PE user, I want to minimize the number of times I need to create a winpe image so that I can save time when deploying to different razor-server URLs.\n\nCurrently, the URL to reach Razor is \"burnt into\" the winpe image, meaning if this URL changes, the user needs to build a whole new winpe image. There is an opportunity to improve the way this happens by modifying the Boot Configuration Datastore (BCD) that comes on the Windows ISO. Modifying this will be a much smaller footprint.\n\nAdding a config parameter to this file (BCD) will result in a registry entry (HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\ SystemStartOptions) that can be queried for the proper Razor URL. If the user then desires to change where the URL points to, a simple 'bcdedit' command executed on a Windows machine will update the BCD file.\n\nSee: `bcdedit /?` and `bcdedit /? /set`\nThe actual command will be something like:\n`bcdedit /set LOADOPTIONS \"RazorURL=...\"`", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11348", "fixedVersions": [], "id": "11348", "issueType": "Story", "key": "RAZOR-478", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Simplify winpe generation by extracting razorurl to BCD", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Microkernel"], "created": "2015-01-29T11:15:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@37fcadef"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy4kv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_612520216_*|*_5_*:*_1_*:*_10666316326_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11344", "fixedVersions": ["RAZOR 1.0"], "id": "11344", "issueType": "Sub-task", "key": "RAZOR-477", "labels": [], "originalEstimate": "PT0S", "parent": "10979", "parentSummary": "Rebase microkernel to CentOS/RHEL", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-02-05T13:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Test that Centos 7 MK boots and sends facts to Razor server", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "attachments": [], "comments": [], "components": ["Microkernel"], "created": "2015-01-29T11:15:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@13e12b72"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy4kn:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_28496680_*|*_3_*:*_1_*:*_584038194_*|*_5_*:*_1_*:*_10666323132_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11187", "fixedVersions": ["RAZOR 1.0"], "id": "11187", "issueType": "Sub-task", "key": "RAZOR-476", "labels": [], "originalEstimate": "PT0S", "parent": "10979", "parentSummary": "Rebase microkernel to CentOS/RHEL", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-02-05T13:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Build MK image using Centos 7", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c12047910a200718b9434", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing this for now, since it hasn't had any activity lately. Feel free to recreate this ticket if the functionality is desired.", "created": "2016-05-11T16:39:00.000000"}], "components": ["Server"], "created": "2015-01-27T15:25:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ffd1073"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy30f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/May/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_40608870054_*|*_6_*:*_1_*:*_0"}], "description": "add a helper method for resolving the value of some node variable regardless of whether that variable is derived from metadata, fact, or database field.\n\nThe order of precedence in resolution should be:\n\nmetadata => facts => database field\n\nrationale being that when an admin sets metadata, we assume that they know what they're doing, facts are inherently more reliable than server calculated values.\n\nThis method can then be used in the tasks.  An example use case, node.hostname.  The first thing I had to do when deploying machines was to fork the rhel task to pull the hostname from metadata, falling back to node.hostname.\n\nIll submit a PR soon \n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11341", "fixedVersions": [], "id": "11341", "issueType": "Improvement", "key": "RAZOR-475", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Won't Fix", "resolutionDate": "2016-05-11T16:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add a lookup_value method to the node object", "timeSpent": "PT0S", "updated": "2016-05-11T16:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Test done except the `http_port` and bootstrap generation.", "created": "2015-03-04T23:21:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "https://github.com/puppetlabs/pe-razor-server/pull/37", "created": "2015-03-05T11:21:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "done testing with small doc ticket RAZOR-514", "created": "2015-03-06T14:01:00.000000"}], "components": [], "created": "2015-01-26T15:30:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@41c6cebc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy1xz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3184750418_*|*_3_*:*_1_*:*_179506119_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11780", "fixedVersions": ["RAZOR 1.0"], "id": "11780", "issueType": "Sub-task", "key": "RAZOR-474", "labels": [], "originalEstimate": "PT0S", "parent": "11240", "parentSummary": "Ability to configure razor-server to expect SSL/HTTPS API communications ", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Done", "resolutionDate": "2015-03-06T14:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Test razor with port different from 8080 and razor server is installed on Puppet Master server", "timeSpent": "PT0S", "updated": "2015-03-06T14:01:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": [], "created": "2015-01-26T15:27:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2212f1b4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyy1xj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3184942779_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11423", "fixedVersions": ["RAZOR 1.0"], "id": "11423", "issueType": "Sub-task", "key": "RAZOR-473", "labels": [], "originalEstimate": "PT0S", "parent": "11240", "parentSummary": "Ability to configure razor-server to expect SSL/HTTPS API communications ", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Done", "resolutionDate": "2015-03-04T12:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create test plan for testing new razor port and running razor server on Puppet Master node", "timeSpent": "PT0S", "updated": "2015-03-04T12:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/275.", "created": "2015-01-23T17:36:00.000000"}, {"author": "623c0a69761efb0069ce0198", "body": "removed points. We're not pointing bugs.", "created": "2015-01-28T11:40:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit e959e1a.", "created": "2015-02-11T11:53:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This ticket spawned RAZOR-484 to generalize how the drive letter of the new OS is determined. It currently defaults to D:, which in my testing is most common.", "created": "2015-02-11T11:54:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:623c0ad4d32a94006a6494f3]: Please document that this will default to the D: drive, as some users may hit this issue when installing Windows.", "created": "2015-02-11T12:12:00.000000"}, {"author": "623c0ad4d32a94006a6494f3", "body": "Will do: tracking in RAZOR-485. Estimating one story point.", "created": "2015-02-11T12:29:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] do you need to explicitly test this? ", "created": "2015-02-19T16:12:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you estimate the story points on this task? ", "created": "2015-02-26T10:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This was 5-8 points for dev (already completed). Always easier to estimate when the work is completed.", "created": "2015-02-26T17:10:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "3 points for QA. Windows usually takes more time to test than *nix", "created": "2015-03-05T11:51:00.000000"}], "components": ["DOCS", "Server"], "created": "2015-01-22T14:34:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@442402d3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyp447:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"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": "10008_*:*_1_*:*_2798347_*|*_1_*:*_1_*:*_72825985_*|*_10007_*:*_2_*:*_1577317697_*|*_3_*:*_2_*:*_68253504_*|*_10009_*:*_1_*:*_340147_*|*_5_*:*_2_*:*_1298315891_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_2423139079"}], "description": "When Windows is being installed, the broker is downloaded onto the temporary winpe image rather than disk. This results in the fresh install starting but the service cannot find the broker file to execute. Instead, this download should be done after reboot as part of the service itself.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11027", "fixedVersions": ["RAZOR 1.0"], "id": "11027", "issueType": "Bug", "key": "RAZOR-471", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-03-11T15:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Windows task cannot find broker to run", "timeSpent": "PT0S", "updated": "2015-03-26T15:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "In the Razor docs, the port number has been changed from 8080 to 8150 in the following locations:\n\nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_windows_install.html\nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_install.html\nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_using.html\nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_secure_apis.html\nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_reference.html", "created": "2015-03-10T09:26:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] one minor change to http://docspreview1.puppetlabs.lan/pe/latest/razor_install.html\n\nThe line\n{quote}\nThe default port for Razor is 8150. This is also the default port for PuppetDB, so you cannot have PuppetDB and Razor installed on the same node.\n{quote}\n\nno longer needs the reference to puppetdb - they no longer share the same port. So it can just read \"The default port for Razor is 8150.\"", "created": "2015-03-10T09:41:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Oh -- good catch, thanks. I have fixed it. Going to rebuild the docspreview site but it takes awhile so give it 20 minutes or so. ", "created": "2015-03-10T09:50:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Looks good to me! I'm going to resolve this issue. If we encounter other issues, we can re-open.", "created": "2015-03-10T10:42:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: Looks good! Just a few changes: 8151 is the API port", "created": "2015-04-09T11:26:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I made the changes except the last bullet point.  Are you suggesting that I provide a general note in the \"Hint\" section to this effect, or did you have specific spots where I should make this change?", "created": "2015-04-09T12:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: These things are needed for that bullet point:\n- \"The default port for Razor is 8150\" => \"The default ports for Razor are 8150 for HTTP and 8151 for HTTPS\"\n- \"export RAZOR_PORT=8150\" => \"export HTTP_PORT=8150 \\n export HTTPS_PORT=8151\"\n- \"The steps below therefore use $RAZOR_HOSTNAME and $RAZOR_PORT for brevity.\" => \"The steps below therefore use $RAZOR_HOSTNAME, $HTTP_PORT, and $HTTPS_PORT for brevity.\"\n- \"wget http://${RAZOR_HOSTNAME\\}:$\\{RAZOR_PORT\\}/api/microkernel/bootstrap?nic_max=1 -O /var/lib/tftpboot/bootstrap.ipxe\" => \"wget https://${RAZOR_HOSTNAME\\}:$\\{HTTPS_PORT\\}/api/microkernel/bootstrap?nic_max=1 -O /var/lib/tftpboot/bootstrap.ipxe\"\n- \"wget http://${RAZOR_HOSTNAME\\}:$\\{RAZOR_PORT\\}/api -O test.out\" => \"wget https://${RAZOR_HOSTNAME\\}:$\\{HTTPS_PORT\\}/api -O test.out\"\n- \"razor -u http://${RAZOR_HOSTNAME\\}:$\\{RAZOR_PORT\\}/api\" => \"razor -u https://$\\{RAZOR_HOSTNAME\\}:$\\{HTTPS_PORT\\}/api\"", "created": "2015-04-09T12:29:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Changes are available here: http://docspreview1.puppetlabs.lan/pe/latest/razor_install.html, http://docspreview1.puppetlabs.lan/pe/latest/razor_using.html#identify-and-register-nodes and here \nhttp://docspreview1.puppetlabs.lan/pe/latest/razor_reference.html#querying-the-node-collection\n", "created": "2015-04-09T14:53:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "I'm rebuilding so don't look this moment.", "created": "2015-04-09T14:53:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: On this: http://docspreview1.puppetlabs.lan/pe/latest/razor_install.html#load-ipxe-software\n\nCan you edit:\n{noformat}\nwget https://${RAZOR_HOSTNAME}:${HTTPS_PORT}/api/microkernel/bootstrap?nic_max=1 -O /var/lib/tftpboot/bootstrap.ipxe\n{noformat}\nto read:\n{noformat}\nwget \"https://${RAZOR_HOSTNAME}:${HTTPS_PORT}/api/microkernel/bootstrap?nic_max=1&http_port=${HTTP_PORT}\" -O /var/lib/tftpboot/bootstrap.ipxe\n{noformat}\n\nAlso, at the bottom of http://docspreview1.puppetlabs.lan/pe/latest/razor_reference.html#the-default-bootstrap-ipxe-file, can you add:\n{noformat}\nThe URL also accepts an \"http_port\" parameter, which tells Razor which port its HTTP communications can use. The typical install should use 8150 for this.\n{noformat}\n\nThanks!", "created": "2015-04-09T18:02:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Made the changes. Lost some formatting. I'll fix that when I build again tomorrow.", "created": "2015-04-09T18:32:00.000000"}], "components": [], "created": "2015-01-21T12:39:00.000000", "creator": "623c0ad4d32a94006a6494f3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7b8bb3dd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxyy7:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_3801520862_*|*_3_*:*_2_*:*_333821462_*|*_10009_*:*_1_*:*_1220363_*|*_4_*:*_1_*:*_85548_*|*_5_*:*_2_*:*_37597638805_*|*_6_*:*_1_*:*_0"}], "description": "As a PE Developer, I want Razor to listen on port ###, so that I can avoid conflicts with well known ports plus ### for PuppetDB and ### for the Puppet Master.\n\nCurrently, Razor uses port 8080 by default which conflicts with PuppetDB if people want to deploy Razor on the same machine as PuppetDB.\n\nWe need to pick and reserve an unused port and make that the default port for Razor (by editing https://github.com/puppetlabs/pe-razor-server/blob/3.2.x/ext/redhat/pe-razor-server.sysconfig for EL distros; simlar files for other distros if any)\n\nThe pe_razor module should also expose the port as a parameter.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11874", "fixedVersions": [], "id": "11874", "issueType": "Sub-task", "key": "RAZOR-472", "labels": [], "originalEstimate": "PT0S", "parent": "11240", "parentSummary": "Ability to configure razor-server to expect SSL/HTTPS API communications ", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c0ad4d32a94006a6494f3", "resolution": "Done", "resolutionDate": "2016-05-18T14:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update the documented default port for Razor", "timeSpent": "PT0S", "updated": "2016-05-18T14:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "86400", "aggregatetimeoriginalestimate": "86400", "assignee": null, "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Per Scott:\n\n`razor-admin` is a command-line executable utility that performs database manipulation. `razor-admin reset-database` clears all user-entered data and restores a fresh install state. `razor-admin migrate-database` migrates the database to the latest state, which is most used when the user updates their Razor server (we don't want to automatically modify the user's production database).", "created": "2016-02-03T10:19:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "https://github.com/puppetlabs/razor-server/blob/cec3f1f74d43496358954907f4e7f206ca66d390/bin/razor-admin", "created": "2016-04-18T14:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is no longer an issue, as this tool is not mentioned in the docs (unnecessary for the user).", "created": "2017-03-10T17:46:00.000000"}], "components": ["DOCS"], "created": "2015-01-21T12:32:00.000000", "creator": "623c0ad4d32a94006a6494f3", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1eaabf0e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxywn:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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_*:*_2_*:*_12871_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_2_*:*_67324398909"}], "description": "Running `razor-admin` from any directory other than `razor-server` fails with an exception like the following:\n\n{noformat}\n[root@razor-server ~]# /opt/puppet/share/razor-server/bin/razor-admin migrate-database\nLoadError: no such file to load -- fast_gettext\n           require at org/jruby/RubyKernel.java:1084\n           require at /opt/puppet/share/torquebox/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:55\n            (root) at /opt/puppet/share/razor-server/lib/razor/gettext_setup.rb:3\n           require at org/jruby/RubyKernel.java:1084\n            (root) at /opt/puppet/share/torquebox/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:1\n           require at /opt/puppet/share/torquebox/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:55\n  require_relative at file:/opt/puppet/share/torquebox/jruby/lib/jruby.jar!/jruby/kernel19/kernel.rb:21\n           require at org/jruby/RubyKernel.java:1084\n            (root) at /opt/puppet/share/razor-server/lib/razor/initialize.rb:2\n            (root) at /opt/puppet/share/torquebox/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:1\n            (root) at /opt/puppet/share/razor-server/bin/razor-admin:68\n{noformat}", "epicLinkSummary": null, "estimate": "PT86400S", "externalId": "11026", "fixedVersions": [], "id": "11026", "issueType": "Task", "key": "RAZOR-851", "labels": [], "originalEstimate": "PT86400S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c0ad4d32a94006a6494f3", "resolution": "Won't Do", "resolutionDate": "2017-03-10T17:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - `razor-admin`", "timeSpent": "PT0S", "updated": "2017-03-10T17:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:5c808afb-dce6-44a1-922d-296dc2c81fe8", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] If it is cross cutting task for RAZOR - please add this as task seperate from stroy", "created": "2015-01-28T15:41:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "https://testrail.ops.puppetlabs.net/index.php?/tests/view/863910&group_by=cases:section_id&group_order=asc&group_id=12498", "created": "2015-02-10T14:59:00.000000"}], "components": ["Server"], "created": "2015-01-16T14:29:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@61b634dc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxx6n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2161789676_*|*_5_*:*_1_*:*_39997893752_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11897", "fixedVersions": ["RAZOR 1.0"], "id": "11897", "issueType": "Sub-task", "key": "RAZOR-464", "labels": [], "originalEstimate": "PT0S", "parent": "11905", "parentSummary": "Report \"stage-done\" for brokers", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Done", "resolutionDate": "2015-02-10T14:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Test Report \"stage-done\"", "timeSpent": "PT0S", "updated": "2016-05-18T14:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you review if the test cases are valid? Thanks\nhttps://testrail.ops.puppetlabs.net/index.php?/suites/view/304&group_by=cases:section_id&group_order=asc", "created": "2015-01-16T18:20:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Reviewed the test cases with Scott in QA/Razor interlock meeting", "created": "2015-01-26T15:32:00.000000"}], "components": ["Server"], "created": "2015-01-16T14:26:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@16c13112"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxx6f:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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_*:*_867946344_*|*_5_*:*_1_*:*_11522630914_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11873", "fixedVersions": ["RAZOR 1.0"], "id": "11873", "issueType": "Sub-task", "key": "RAZOR-463", "labels": [], "originalEstimate": "PT0S", "parent": "11905", "parentSummary": "Report \"stage-done\" for brokers", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Fixed", "resolutionDate": "2015-01-26T15:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create test cases for Report \"Stage-done\" in TestRail", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-14T12:33:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@43b462c9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxv0v:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_33221_*|*_6_*:*_1_*:*_0"}], "description": "Stub task for work done to facilitate the 0.16.0 and 0.16.1 releases.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11777", "fixedVersions": [], "id": "11777", "issueType": "Task", "key": "RAZOR-460", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-14T12:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Help and Smoke Testing for 0.16.0 and 0.16.1 Releases", "timeSpent": "PT0S", "updated": "2015-01-14T12:33:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is still relevant, and should be treated as a spike since we do not know the extent to which changes will be required to make this work with the latest version of the sequel gem. We might split this into research and implementation, but I worry the research will require implementation work for full understanding.", "created": "2016-03-02T02:14:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Work was completed as part of the JRuby/Torquebox update.", "created": "2018-04-02T10:27:00.000000"}], "components": [], "created": "2015-01-13T15:41:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b45bc00"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxu5b:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_38191927422_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_63305599027"}], "description": "Sequel, when updated to the latest version, is causing an error in our application:\n\n{code}\n13:56:32,947 INFO  [razor.web.api] (http-/0.0.0.0:8080-1) NoMethodError - undefined method `length' for #<Razor::BrokerType:0x49980b4a>:\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/plugins/validation_helpers.rb:128:in `validates_max_length'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/plugins/validation_helpers.rb:273:in `validatable_attributes'\n        org/jruby/RubyArray.java:1613:in `each'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/plugins/validation_helpers.rb:268:in `validatable_attributes'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/plugins/validation_helpers.rb:282:in `validatable_attributes_for_type'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/plugins/validation_helpers.rb:128:in `validates_max_length'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/plugins/auto_validations.rb:146:in `validate'\n        org/jruby/RubyArray.java:1613:in `each'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/plugins/auto_validations.rb:145:in `validate'\n        /opt/razor/lib/razor/data/broker.rb:18:in `validate'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/base.rb:1976:in `_valid?'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/base.rb:1124:in `around_validation'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/base.rb:1966:in `_valid?'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/base.rb:1521:in `save'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/base.rb:1997:in `checked_save_failure'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/base.rb:1521:in `save'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/base.rb:148:in `create'\n        /opt/razor/lib/razor/data.rb:50:in `import'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/database/transactions.rb:126:in `_transaction'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/database/transactions.rb:114:in `_transaction'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/database/transactions.rb:100:in `transaction'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/connection_pool/threaded.rb:98:in `hold'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/connection_pool/threaded.rb:87:in `hold'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/database/connecting.rb:255:in `synchronize'\n        /opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/database/transactions.rb:89:in `transaction'\n        /opt/razor/lib/razor/data.rb:49:in `import'\n        /opt/razor/lib/razor/command/create_broker.rb:61:in `run'\n        /opt/razor/lib/razor/command.rb:53:in `handle_http_post'\n        /opt/razor/app.rb:556:in `POST /api/commands/:name'\n{code}\n\nThis is being worked around by binding to version 4.3, and may require some rework in how we use sequel since it seems incompatible with later versions.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11337", "fixedVersions": [], "id": "11337", "issueType": "Bug", "key": "RAZOR-459", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Duplicate", "resolutionDate": "2018-04-02T10:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update sequel to latest (>= 4.18)", "timeSpent": "PT0S", "updated": "2018-04-02T10:27: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 from this PR are available at http://builds.puppetlabs.lan/razor-torquebox/55dab3e5c4a784ea0871ed38f649d723616017b1/", "created": "2015-01-14T17:10:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This has been shipped", "created": "2015-01-20T12:30:00.000000"}], "components": ["Server"], "created": "2015-01-12T17:52:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@22d65f76"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxtjj:"}, {"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": "15/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1051251_*|*_10007_*:*_1_*:*_582629189_*|*_3_*:*_1_*:*_1921218_*|*_5_*:*_1_*:*_41821237445_*|*_6_*:*_1_*:*_0_*|*_10005_*:*_1_*:*_86246932"}], "description": "There is an implicit dependency on Java being past a certain version for the jruby in razor-torquebox.\n\nThe resulting error looks like this:\n{code}\nException in thread \"main\" java.lang.NoClassDefFoundError: org.jruby.Main\n   at gnu.java.lang.MainThread.run(libgcj.so.10)\nCaused by: java.lang.ClassNotFoundException: org.jruby.Main not found in gnu.gcj.runtime.SystemClassLoader{urls=[file:./], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}\n   at java.net.URLClassLoader.findClass(libgcj.so.10)\n   at java.lang.ClassLoader.loadClass(libgcj.so.10)\n   at java.lang.ClassLoader.loadClass(libgcj.so.10)\n   at gnu.java.lang.MainThread.run(libgcj.so.10)\n{code}\n\nInstalling a later version via `yum install -y java-1.6.0-openjdk` resolves the issue, and so this should be a dependency in the package itself.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11548", "fixedVersions": ["RAZOR 0.16.1"], "id": "11548", "issueType": "Improvement", "key": "RAZOR-457", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add Java >= 1.6 dependency to razor-torquebox", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@2ffa97f9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt53:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_107296804_*|*_5_*:*_1_*:*_342372_*|*_6_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%220.16.1%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": "11185", "fixedVersions": [], "id": "11185", "issueType": "Sub-task", "key": "RAZOR-455", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-13T17:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-01-13T17:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Announcement sent to the mailing list: https://groups.google.com/forum/#!topic/puppet-razor/jMNNGBSU2Yo", "created": "2015-01-13T17:43:00.000000"}], "components": [], "created": "2015-01-12T11:49: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@51d35ae4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt4v:"}, {"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_*:*_107238378_*|*_5_*:*_1_*:*_393011_*|*_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": "11025", "fixedVersions": [], "id": "11025", "issueType": "Sub-task", "key": "RAZOR-454", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-13T17:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-01-13T17:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@63cf7b09"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt4n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_107227095_*|*_5_*:*_1_*:*_280420_*|*_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": "10881", "fixedVersions": [], "id": "10881", "issueType": "Sub-task", "key": "RAZOR-453", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-13T17:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-01-13T17:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@6f1228b7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt4f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_105449626_*|*_3_*:*_1_*:*_1542456_*|*_5_*:*_1_*:*_512792_*|*_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": "11896", "fixedVersions": [], "id": "11896", "issueType": "Sub-task", "key": "RAZOR-452", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-13T17:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-01-13T17:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@67342f02"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt47:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_106989460_*|*_5_*:*_1_*:*_514911_*|*_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": "11872", "fixedVersions": [], "id": "11872", "issueType": "Sub-task", "key": "RAZOR-451", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-13T17:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-01-13T17:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@7c3287c1"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt3z:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_21839732_*|*_5_*:*_1_*:*_269514_*|*_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": "11776", "fixedVersions": [], "id": "11776", "issueType": "Sub-task", "key": "RAZOR-450", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-13T17:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-01-13T17:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Smoke tests completed on Centos 7, Centos 6, and Ubuntu Precise (12.04). The test involved a curl of /api, plus a specific curl to validate RAZOR-439.", "created": "2015-01-12T17:31:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Re-did packaging, new smoke test results are:\n- Centos 7: Full sanity check, including an install of Ubuntu Trusty.\n- Ubuntu Trusty (14.04): Basic functionality check.\n\nSmoke tests pass for this release.", "created": "2015-01-13T16:37:00.000000"}], "components": [], "created": "2015-01-12T11:49: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@6b2941f7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt3r:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "12/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2317760_*|*_3_*:*_1_*:*_18307912_*|*_5_*:*_1_*:*_86815612_*|*_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": "11713", "fixedVersions": [], "id": "11713", "issueType": "Sub-task", "key": "RAZOR-449", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-12T17:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-01-14T10:55:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@a846263"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt3j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1683147_*|*_3_*:*_1_*:*_359089_*|*_5_*:*_1_*:*_105413371_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "11547", "fixedVersions": [], "id": "11547", "issueType": "Sub-task", "key": "RAZOR-448", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-12T12:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-01-13T17:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@66d10ef6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt3b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1294142_*|*_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": "11407", "fixedVersions": [], "id": "11407", "issueType": "Sub-task", "key": "RAZOR-447", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-01-12T12:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2015-01-12T12:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@452928a6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt33:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1267608_*|*_5_*:*_1_*:*_106240012_*|*_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": "11336", "fixedVersions": [], "id": "11336", "issueType": "Sub-task", "key": "RAZOR-446", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-12T12:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2015-01-13T17:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:49: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@69341c05"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt2v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1228649_*|*_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": "11184", "fixedVersions": [], "id": "11184", "issueType": "Sub-task", "key": "RAZOR-445", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-01-12T12:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2015-01-12T12:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:48: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@20bdc04a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt2n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1187425_*|*_5_*:*_1_*:*_106319701_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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": "11024", "fixedVersions": [], "id": "11024", "issueType": "Sub-task", "key": "RAZOR-444", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-12T12:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-01-13T17:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:48: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@5ca6384b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt2f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_207616_*|*_5_*:*_1_*:*_107293368_*|*_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": "10880", "fixedVersions": [], "id": "10880", "issueType": "Sub-task", "key": "RAZOR-443", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-12T11:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2015-01-13T17:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:48: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@5d828850"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt27:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_194572_*|*_5_*:*_1_*:*_107300328_*|*_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": "11895", "fixedVersions": [], "id": "11895", "issueType": "Sub-task", "key": "RAZOR-442", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-12T11:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2015-01-13T17:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:48: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@64031c81"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt1z:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_191503_*|*_5_*:*_1_*:*_107234199_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%220.16.1%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11871", "fixedVersions": [], "id": "11871", "issueType": "Sub-task", "key": "RAZOR-441", "labels": [], "originalEstimate": "PT0S", "parent": "11775", "parentSummary": "razor-server 0.16.1 2015-01-12 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-12T11:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2015-01-13T17:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0cbf1c7f6a007049e5b9", "attachments": [], "comments": [], "components": [], "created": "2015-01-12T11:48: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@1269b4b4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxt1r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_107405332_*|*_6_*:*_1_*:*_0"}], "description": "razor-server 0.16.1 2015-01-12 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": "11775", "fixedVersions": [], "id": "11775", "issueType": "Task", "key": "RAZOR-440", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-13T17:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-server 0.16.1 2015-01-12 Release", "timeSpent": "PT0S", "updated": "2015-01-13T17:38:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [{"attacher": "557058:62fc27b5-2bfc-4fdf-82be-503b4eaf1d36", "created": "2015-01-07T14:58:00.000000", "name": "Screenshot 2015-01-08 00.57.28.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10203"}], "comments": [{"author": "557058:62fc27b5-2bfc-4fdf-82be-503b4eaf1d36", "body": "razor=> SELECT \"version\" FROM \"schema_info\" LIMIT 1", "created": "2015-01-07T15:47:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/269.", "created": "2015-01-08T11:49:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed by razor-server commit 4ff080c.", "created": "2015-01-08T13:09:00.000000"}, {"author": "557058:62fc27b5-2bfc-4fdf-82be-503b4eaf1d36", "body": "Bugfix verified. Good job.", "created": "2015-01-09T06:34:00.000000"}], "components": ["Server"], "created": "2015-01-07T14:46:00.000000", "creator": "557058:62fc27b5-2bfc-4fdf-82be-503b4eaf1d36", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@a11b8e4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypn3r:"}, {"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/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_80128762_*|*_1_*:*_1_*:*_4212749_*|*_10007_*:*_1_*:*_4776900_*|*_3_*:*_1_*:*_71554882_*|*_5_*:*_1_*:*_367994637_*|*_6_*:*_1_*:*_0"}], "description": "Request to razor-server:\n/svc/boot?net0=00-1c-42-b5-90-10&net1=&net2=&dhcp_mac=00-1c-42-b5-90-10&serial=Parallels-7A%202F%2050%2021%203D%2005%2041%206B%2083%20DC%2062%203C%205A%201E%2067%20B9&asset=%20&uuid=21502f7a-053d-6b41-83dc-623c5a1e67b9\n\nresponse (json):\n{\nerror: \"entry is not a valid string\"\n}\n\nserver.log:\n08:45:00,002 INFO  [Razor.ScheduledJobs.IPMI] (jboss.deployment.unit.\"razor-knob.yml\".job_scheduler_Worker-2) checking for nodes that need a scheduled power state update\n08:45:00,006 INFO  [razor.sequel] (jboss.deployment.unit.\"razor-knob.yml\".job_scheduler_Worker-2) (0.001000s) SELECT * FROM \"nodes\" WHERE (((\"last_power_state_update_at\" IS NULL) OR (\"last_power_state_update_at\" < (NOW() - INTERVAL '4 minutes'))) AND (\"ipmi_hostname\" IS NOT NULL))\n08:45:03,405 INFO  [razor.sequel] (http-/0.0.0.0:8080-2) (0.001000s) CREATE TABLE IF NOT EXISTS \"schema_info\" (\"version\" integer DEFAULT 0 NOT NULL)\n08:45:03,410 INFO  [razor.sequel] (http-/0.0.0.0:8080-2) (0.003000s) SELECT * FROM \"schema_info\" LIMIT 1\n08:45:03,413 INFO  [razor.sequel] (http-/0.0.0.0:8080-2) (0.001000s) SELECT 1 AS \"one\" FROM \"schema_info\" LIMIT 1\n08:45:03,416 INFO  [razor.sequel] (http-/0.0.0.0:8080-2) (0.001000s) SELECT count(*) AS \"count\" FROM \"schema_info\" LIMIT 1\n08:45:03,419 INFO  [razor.sequel] (http-/0.0.0.0:8080-2) (0.000000s) SELECT \"version\" FROM \"schema_info\" LIMIT 1\n08:45:03,423 INFO  [razor.sequel] (http-/0.0.0.0:8080-2) (0.001000s) SELECT \"version\" FROM \"schema_info\" LIMIT 1\n08:45:03,428 INFO  [razor.sequel] (http-/0.0.0.0:8080-2) (0.001000s) SELECT * FROM \"nodes\" WHERE (\"hw_info\" && ARRAY['mac=00-1c-42-b5-90-10'])\n08:45:03,441 INFO  [razor.web.api] (http-/0.0.0.0:8080-2) Sequel::ValidationFailed - entry is not a valid string:\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/base.rb:1522:in `save'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/associations.rb:2007:in `_add_event'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/associations.rb:2166:in `add_associated_object'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sequel-4.18.0/lib/sequel/model/associations.rb:1779:in `add_event'\n\t/opt/razor/lib/razor/data/node.rb:173:in `log_append'\n\t/opt/razor/app.rb:383:in `HEAD /svc/boot'\n\torg/jruby/RubyMethod.java:124:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1603:in `compile!'\n\torg/jruby/RubyProc.java:271:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `route!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:985:in `route_eval'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `route!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1006:in `process_route'\n\torg/jruby/RubyKernel.java:1264:in `catch'\n\t/opt/razor/app.rb:383:in `HEAD /svc/boot'\n\torg/jruby/RubyMethod.java:124:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1603:in `compile!'\n\torg/jruby/RubyProc.java:271:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `route!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:985:in `route_eval'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `route!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1006:in `process_route'\n\torg/jruby/RubyKernel.java:1264:in `catch'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1004:in `process_route'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:964:in `route!'\n\torg/jruby/RubyArray.java:1613:in `each'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:963:in `route!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1076:in `dispatch!'\n\torg/jruby/RubyArray.java:1613:in `each'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:963:in `route!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1076:in `dispatch!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'\n\torg/jruby/RubyKernel.java:1264:in `catch'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1073:in `dispatch!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:898:in `call!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'\n\torg/jruby/RubyKernel.java:1264:in `catch'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:898:in `call!'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:886:in `call'\n\t/opt/razor/lib/razor/middleware/auth.rb:48:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-1.6.0/lib/rack/commonlogger.rb:33:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:217:in `call'\n\t/opt/razor/lib/razor/middleware/logger.rb:13:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-1.6.0/lib/rack/commonlogger.rb:33:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:217:in `call'\n\t/opt/razor/lib/razor/middleware/logger.rb:13:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-protection-1.5.3/lib/rack/protection/xss_header.rb:18:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-protection-1.5.3/lib/rack/protection/json_csrf.rb:18:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'\nck/protection/base.rb:49:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-protection-1.5.3/lib/rack/protection/frame_options.rb:31:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-1.6.0/lib/rack/nulllogger.rb:9:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/rack-1.6.0/lib/rack/head.rb:13:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:180:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:2014:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:180:in `call'\n\t/opt/razor/vendor/bundle/jruby/1.9/gems/sinatra-1.4.5/lib/sinatra/base.rb:2014:in `call'\n08:45:03,450 INFO  [razor.web.log] (http-/0.0.0.0:8080-2) 172.16.0.140 - - [08/Jan/2015:09:45:03 +0400] \"GET /svc/boot?net0=00-1c-42-b5-90-10&net1=&net2=&dhcp_mac=00-1c-42-b5-90-10&serial=Parallels-7A%202F%2050%2021%203D%2005%2041%206B%2083%20DC%2062%203C%205A%201E%2067%20B9&asset=%20&uuid=21502f7a-053d-6b41-83dc-623c5a1e67b9 \" 400 39 0.0620\n\n[root@razor ~]# rpm -qa | grep razor\nrazor-torquebox-3.1.1-1.el6.noarch\nrazor-server-0.16.0-1.el6.noarch\n", "environment": "Parallels Desktop enviroment", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11183", "fixedVersions": ["RAZOR 0.16.1"], "id": "11183", "issueType": "Bug", "key": "RAZOR-439", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Blocker", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:62fc27b5-2bfc-4fdf-82be-503b4eaf1d36", "resolution": "Fixed", "resolutionDate": "2015-01-09T11:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Could not boot image: boot response \"error: entry is not a valid string\" ", "timeSpent": "PT0S", "updated": "2015-01-13T17:37:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This package is actually available via the el5 EPEL repo, so we don't have to worry about this not being available in the default repos. As long as the user enables EPEL on their machine, this dependency will be satisfied.", "created": "2015-01-06T11:34:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The [documentation|https://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F] describes how to add these extra repos.", "created": "2015-01-06T12:19:00.000000"}], "components": [], "created": "2015-01-06T11:18: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@5476adb6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxqaf:"}, {"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": "06/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_936414_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11182", "fixedVersions": [], "id": "11182", "issueType": "Bug", "key": "RAZOR-438", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-01-06T11:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Missing dependency `libarchive-devel` on el5", "timeSpent": "PT0S", "updated": "2015-01-06T12:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This has been shipped and is available for download", "created": "2015-01-05T17:53:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:4b02db91-705f-4691-a56a-9a839ecbce6e] this should be removed from the RAZOR sprint and added to the RE sprint.", "created": "2015-01-06T06:32:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This one will stay in the Razor sprint, RAZOR-436 will be in the RE sprint", "created": "2015-01-06T10:21:00.000000"}], "components": [], "created": "2015-01-05T11:11: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@560a6c1b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypgfb:"}, {"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": "06/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_37516_*|*_3_*:*_1_*:*_24089133_*|*_5_*:*_1_*:*_81180190_*|*_6_*:*_1_*:*_0"}], "description": "Let's also release razor-torquebox for el7 while we're here", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11023", "fixedVersions": ["RAZOR 0.16.0"], "id": "11023", "issueType": "Task", "key": "RAZOR-437", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-05T17:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update razor-torquebox to new 3.1.1", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit c4dc720.", "created": "2015-01-05T16:57:00.000000"}], "components": [], "created": "2015-01-05T10:30: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@6f7a7761"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypcfj:"}, {"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": "3.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_186858_*|*_10007_*:*_1_*:*_2317788_*|*_5_*:*_1_*:*_84514233_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_20746082"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11335", "fixedVersions": ["RAZOR 0.16.0"], "id": "11335", "issueType": "Task", "key": "RAZOR-436", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2015-01-05T16:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add support for el7", "timeSpent": "PT0S", "updated": "2015-09-01T12:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Details on using HTTPS with Torquebox can be found here: http://torquebox.org/documentation/3.1.1/production-setup.html#ssl-configuration\n\nThere's really two big things that need to be done for this ticket:\n\n1. pe_razor needs to get a SSL cert from Puppet's CA when it installs Razor\n2. set up Razor/TorqueBox so that it uses that cert for all external (non-local) requests to /api - the /svc URL space should continue to work with plain HTTP\n", "created": "2014-12-22T18:16:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I took a stab at converting this to a user story. Let's discuss breaking down into sub-tasks if it could help organize the effort.", "created": "2014-12-23T10:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "301 redirection from HTTP to HTTPS may be enabled only when auth.enabled is enabled in config.yaml. This may be a good route for ease of migration for most users.", "created": "2015-02-02T18:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The redirection idea is bad because it still allows the user to send HTTP basic auth credentials across the wire. In order for this to really work, HTTP needs to be blocked on all external (non-127.0.0.1) requests. This means we will need to rework /svc requests to use `-k`/insecure.\n\nEdit: Links [1|http://security.stackexchange.com/questions/988/is-basic-auth-secure-if-done-over-https] and [2|http://swaggadocio.com/post/48223179207/why-the-hell-does-your-api-still-use-http-basic]", "created": "2015-02-05T10:54:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "After discussion with [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], we've realized that SSL for Razor is a larger effort than a one-sprint story and covers a few different discrete areas of work. I'm going to move this issue to an Epic, and create stories for the contained areas of functionality.", "created": "2015-02-11T12:43:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The current state of things on SSL in Razor:\n- *iPXE*: In order for iPXE calls to trust an https connection, the razor-server's cert needs to be CA-signed, or a custom ipxe.iso needs to be built and installed on the node.\n- *API*: Other calls to /api via e.g. razor-client can be done over HTTPS, either with a self-signed cert and `-k`, or with a CA-signed cert.\n- The combination of these means that HTTP and HTTPS should both be open in most cases (since CA-signed certs are rare).\n- A config option ('secure_api_only') should say whether /api calls must be secure, defaulting to false for FOSS.\n- For FOSS, it will be documented how to self-sign and use this certificate (just HTTP by default).", "created": "2015-02-11T12:54:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Nixing iPXE efforts (RAZOR-486), since that will require network-level security. Rebuilding ipxe.iso is also required just to enable HTTPS, defeating the purpose of the automation.", "created": "2015-02-17T12:24:00.000000"}], "components": ["Server"], "created": "2014-12-19T19:41:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Node Management Services"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@510edc9"}, {"fieldName": "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 Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "ghx-label-2"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "SSL for Razor Coms"}, {"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": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "dark_yellow"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyp44f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "23/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_2226570378_*|*_3_*:*_2_*:*_1724722808_*|*_6_*:*_1_*:*_0_*|*_10013_*:*_1_*:*_2431270798_*|*_10006_*:*_1_*:*_689253036"}], "description": "As a system administrator, I want Razor traffic to be encrypted with https so that I can protect my infrastructure against various forms of eavesdropping and information leakage.\n\nWhen the client makes requests to the server, the protocol is HTTP and authentication is done in-place by the hostname (e.g. http://user:password@razor:8080). This is insecure since the headers can be snooped in the network traffic. Better will be to switch to HTTPS for the requests.\n\nThis will involve some work with SSL certificates and Certificate Authorities. To avoid this, it may be worthwhile to add a config parameter `allow_insecure` which will allow both the current HTTP as well as HTTPS requests.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11022", "fixedVersions": ["RAZOR 1.0"], "id": "11022", "issueType": "Epic", "key": "RAZOR-435", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Blocker", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2015-03-11T17:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "SSL for Razor Coms", "timeSpent": "PT0S", "updated": "2015-10-22T08:38:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12047910a200718b9434", "body": "I think it should be ok to make the file /etc/dhcp/dhclient.conf rather than interface specific, but i cant find a definitive answer either way...", "created": "2014-12-18T20:52:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Can you include some details on how they identified the node differently ? DO they use different MAC addresses ?", "created": "2014-12-19T11:11:00.000000"}, {"author": "623c12047910a200718b9434", "body": "LOL, yes that would be useful wouldnt it.... :-/\n\nHere are the leases from the dhcp.leases file:\n\n#This one given to iPXE\nlease 192.168.100.201 \\{\n  starts 5 2014/12/19 20:08:23", "created": "2014-12-19T13:13:00.000000"}, {"author": "623c12047910a200718b9434", "body": "If we could change the iPXE behaviour, that would be ideal, as the same issue exists when you deploy an operating system (i had to modify my RHEL task to update the dhclient file).  Although operating systems could also be different.\n\nWhen i was researching the issue though, I couldnt find anyway of altering the iPXE behaviour.", "created": "2014-12-19T13:31:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:623c12047910a200718b9434] Do we have any progress on a fix for this? It seems to just include recompiling the microkernel with the given `send` command from the description?", "created": "2016-03-30T16:58:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Hi [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4],\n\nLong time no speak.\n\nI think from memory that's the best/quickest/simplest way to proceed.\n\nThere will still be issues making sure that the final OS gets the same address but that will depend entirely on the OS and how that's done.  I think the later versions of DHCPD actually have a configuration option that helps in that it sets it to ignore certain identifiers other than the mac address, but that option isn't available in the DHCPD thats ships with RHEL6 (not sure about RHEL7).\n\nI think I also remember reading that iPXE could inherit the IP address from the initial PXE boot removing the need for iPXE to dhcp altogether.  Not sure if thats worth looking into...\n\nThanks,\nChris", "created": "2016-03-30T17:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Given the age of this ticket, I'm marking it Closed - Won't Fix. We'll welcome pull requests to fix it, or reopen if the priority seems high enough to merit revisiting.", "created": "2019-12-02T20:33:00.000000"}], "components": ["Microkernel"], "created": "2014-12-18T20:27:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@55a2e288"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:w"}, {"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": "1_*:*_1_*:*_40418633439_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_52657479258_*|*_10005_*:*_1_*:*_63308274188"}], "description": "The IPXE dhcp requests and the MK requests differ in the identification detail they send.  This results in a lease being created for the IPXE request and another for the MK.\n\nI had also noticed this between IPXE and the installed os.  The fix was to add:\nsend dhcp-client-identifier = hardware;\n\nto /etc/dhcp/dhclient-eht0.conf, it normalised the UID in the lease.", "environment": "isc-dhcpd", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11774", "fixedVersions": [], "id": "11774", "issueType": "Bug", "key": "RAZOR-434", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Won't Fix", "resolutionDate": "2019-12-02T20:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "IPXE and the MK identify differently to DHCP servers", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "attachments": [], "comments": [{"author": "623c12047910a200718b9434", "body": "PR https://github.com/puppetlabs/razor-server/pull/265 addresses this.", "created": "2014-12-25T18:35:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Increasing priority on this to Critical since with larger databases, any commands that list many elements become unusable if the CLI is running N requests (one for each row).", "created": "2018-04-02T10:30:00.000000"}, {"author": "557058:d494f5f9-7e70-4298-bf72-c8f9e7cca4db", "body": "After some discussion with [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], we think that a good approach would be to add a 'depth' parameter to the /api/collection/<type> endpoint. The semantics would be:\n\ndepth = 0 would return the list of items in the collection, i.e. it would correspond to the default behavior\n\ndepth = 1 would return a detailed list of items in the collection, i.e. for each item, it would return whatever /api/collection/<type>/<id> returns.\n\n", "created": "2018-04-12T14:05:00.000000"}], "components": ["Server"], "created": "2014-12-18T19:49:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@668cc560"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxlvz:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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": "1_*:*_1_*:*_40420714010_*|*_10007_*:*_2_*:*_830168831_*|*_5_*:*_1_*:*_34930707424_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1244704137_*|*_10005_*:*_1_*:*_63308517343"}], "description": "For ease of consumption by 3rd pary scripts, add an 'extend' or verbose option to the /api/collection/<type> apis that provides the full detail of the items in the collection (equivalent of /api/collection/<type>/<id>).\n\nThis saves scripts from having to get the list of items in one call, and then iterate over the items with a call for each one to get the detail.  ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11712", "fixedVersions": ["RAZOR 1.9.2"], "id": "11712", "issueType": "New Feature", "key": "RAZOR-433", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Fixed", "resolutionDate": "2018-04-26T10:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Retrieve full objects for use in CLI", "timeSpent": "PT0S", "updated": "2019-06-04T17:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12047910a200718b9434", "body": "I've submitted pull request https://github.com/puppetlabs/razor-server/pull/261 for this.", "created": "2014-12-10T19:04:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Spinning this thought a little further: should we add a protect-new-nodes hook or a way for the node-registered hook to mark the node as installed ?\n\nI just worry that somebody else will something similar, but not based off IP address but some other criterion", "created": "2014-12-23T17:14:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Are you saying remove the \"protect-new-nodes\" functionality from the razor code all together and leave it as an exercise for the user to implement the entire use case through hooks? Should be possible in the node-registered or even the node-booted hook.\n\nAlternatively, the current \"protect_new_nodes\" configurable combined with this PR could be used to address the green-field vs brown-field VLAN/Subnets use case (as a supported configuration) which I expect would be very common just due to the inherent nature of razor/dhcp.  Then outside that, the hook implementation as it stands could be leveraged for more complicated, corner-case use cases (Specific hook implementations I assume would not be supported as such?)?", "created": "2014-12-23T19:25:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "Closed due to inactivity. Please reopen if this needs attention.", "created": "2016-03-30T16:45:00.000000"}], "components": ["Server"], "created": "2014-12-10T18:55:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5df2b3fc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxi4f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_41115024187_*|*_6_*:*_1_*:*_0"}], "description": "Protect_new_nodes is an all or nothing option.  We should support the ability to use this setting to specify a default and then allow it to be flipped for specified subnets.\n\nThat way the admin can say \"All new machines should be protected, except for ones on these greenfield subnets\"; or \"No new machines should be protected except for machines on these brownfield subnets which has machines deployed not via razor\".", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11710", "fixedVersions": [], "id": "11710", "issueType": "New Feature", "key": "RAZOR-421", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Won't Fix", "resolutionDate": "2016-03-30T16:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support overriding protect_new_nodes by subnet", "timeSpent": "PT0S", "updated": "2016-03-30T16:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed as of the 1.1.0 release.", "created": "2016-03-02T02:11:00.000000"}], "components": [], "created": "2014-12-05T13:33:00.000000", "creator": "557058:f7d70888-838d-425f-a921-39fe10627fae", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@46f6fb89"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxg33:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_39098247571_*|*_6_*:*_1_*:*_0"}], "description": "It looks like with create_policy, task is still a required parameter.\nhttps://github.com/puppetlabs/razor-server/blob/master/lib/razor/command/create_policy.rb#L103\n\nI can see some intended behavior in the policies otherwise here:\nhttps://github.com/puppetlabs/razor-server/blob/master/spec/data/policy_spec.rb#L40\n\nIt looks like the intended behavior is to default to the repo task if there's no task specified for the policy directly, but I don't know if that's ever relevant if I can't even create a policy without a task specified.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11332", "fixedVersions": ["RAZOR 1.1.0"], "id": "11332", "issueType": "Bug", "key": "RAZOR-416", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:f7d70888-838d-425f-a921-39fe10627fae", "resolution": "Fixed", "resolutionDate": "2016-03-02T02:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create policy requires task", "timeSpent": "PT0S", "updated": "2016-03-02T02:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/263.", "created": "2014-12-18T16:25:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit dd9e911.", "created": "2014-12-19T20:27:00.000000"}], "components": [], "created": "2014-12-02T14:01:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d1ae6e3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypgev:"}, {"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/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1391074439_*|*_10007_*:*_1_*:*_100906783_*|*_5_*:*_1_*:*_1540730433_*|*_6_*:*_1_*:*_0"}], "description": "Razor Server version: 0.15.1.1-21\nRazor Client version: 0.15.1\n\nFile /opt/puppet/share/razor-server/tasks/windows.task/unattended.xml.erb has Windows Administrator password hardcoded to be 'razor' as below:\n\n{code}\n<component name=\"Microsoft-Windows-Shell-Setup\" processorArchitecture=\"amd64\" publicKeyToken=\"31bf3856ad364e35\" language=\"neutral\" versionScope=\"nonSxS\" xmlns:wcm=\"http://schemas.microsoft.com/WMIConfig/2002/State\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n      <UserAccounts>\n        <AdministratorPassword>\n          <Value>razor</Value>\n          <PlainText>true</PlainText>\n        </AdministratorPassword>\n      </UserAccounts>\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11869", "fixedVersions": ["RAZOR 0.16.0"], "id": "11869", "issueType": "Bug", "key": "RAZOR-414", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Fixed", "resolutionDate": "2014-12-19T20:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Windows: razor doesn't take passwd from policy, unattended.xml.erb is hardcoded", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/264.", "created": "2014-12-19T15:52:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "For wimboot 1.0.3, bootmrg fails to extract bootmge.exe so the booting could not continue.\nOther than that, sometime the booting is stuck and I am not sure why, with later wimboot(2.4.0) I don't see the problem anymore.", "created": "2014-12-19T15:53:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit c95effc.", "created": "2014-12-19T20:23:00.000000"}], "components": [], "created": "2014-12-02T10:49:00.000000", "creator": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1c5a035b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypgen:"}, {"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_*:*_1_*:*_85112_*|*_1_*:*_1_*:*_1486994112_*|*_10007_*:*_1_*:*_16234193_*|*_5_*:*_1_*:*_1540904139_*|*_6_*:*_1_*:*_0"}], "description": "Razor Server version: 0.15.1.1-21\nRazor server currently has wimboot 1.0.3 which has some booting issues. I use the latest Wimboot 2.4.0 and it works much better. \n\nWondering if wimboot should have newer version?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11330", "fixedVersions": ["RAZOR 0.16.0"], "id": "11330", "issueType": "Bug", "key": "RAZOR-413", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "resolution": "Fixed", "resolutionDate": "2014-12-19T20:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "wimboot should have newer version instead of the current 1.0.3", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2014-11-20T17:26: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@4b7f72ca"}, {"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": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9k7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Jul/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_41639743120_*|*_6_*:*_1_*:*_0"}], "description": "It would be nice if razor could get node names from DHCP reservations.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11020", "fixedVersions": [], "id": "11020", "issueType": "New Feature", "key": "RAZOR-412", "labels": ["support"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:26c5159c-b2b1-4782-abbb-fb74eaa2c664", "resolution": "Won't Fix", "resolutionDate": "2016-03-16T17:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "assign node names from DHCP reservations", "timeSpent": "PT0S", "updated": "2016-03-16T17:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-11-20T12:14:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@168060d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9cn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4075999187_*|*_6_*:*_1_*:*_0"}], "description": "Close any tickets that have been resolved for the release.\n\nhttps://puppet.atlassian.net/issues/?jql=project%20%3D%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%220.16.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": "11327", "fixedVersions": [], "id": "11327", "issueType": "Sub-task", "key": "RAZOR-410", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-06T16:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2015-01-06T16:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[Email|https://groups.google.com/forum/#!topic/puppet-razor/jMNNGBSU2Yo] sent out to the puppet-razor mailing list.", "created": "2015-01-06T16:23:00.000000"}], "components": [], "created": "2014-11-20T12:14:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3bf9674b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9cf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4075985705_*|*_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  * 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": "11179", "fixedVersions": [], "id": "11179", "issueType": "Sub-task", "key": "RAZOR-409", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-06T16:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2015-01-06T16:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The docs.puppetlabs.com update is only applicable to PE releases. There were some NEWS.md updates that needed to get pushed, tracked by https://github.com/puppetlabs/razor-server/pull/266.", "created": "2015-01-02T15:13:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit cb728d2.", "created": "2015-01-02T15:14:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This ticket does also require a few updates to the razor-server wiki on GitHub.", "created": "2015-01-02T17:05:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Wiki pages for `Installing windows` and `Hooks` updated.", "created": "2015-01-06T15:49:00.000000"}], "components": [], "created": "2014-11-20T12:14:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@45fe06"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9c7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4073763146_*|*_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": "11019", "fixedVersions": [], "id": "11019", "issueType": "Sub-task", "key": "RAZOR-408", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-06T15:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2015-01-06T15:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2014-11-20T12:14:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@27262f2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9bz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4071017518_*|*_3_*:*_1_*:*_1437044_*|*_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": "10952", "fixedVersions": [], "id": "10952", "issueType": "Sub-task", "key": "RAZOR-407", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-06T15:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2015-01-06T15:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "0.16.0 tags are pushed for both razor-server and razor-client", "created": "2015-01-06T15:17:00.000000"}], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6269016d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9br:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4071786480_*|*_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": "11893", "fixedVersions": [], "id": "11893", "issueType": "Sub-task", "key": "RAZOR-406", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-06T15:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2015-01-06T15:17:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91], and me say go!", "created": "2015-01-06T15:03:00.000000"}], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@586bb8f3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9bj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4070988097_*|*_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": "11868", "fixedVersions": [], "id": "11868", "issueType": "Sub-task", "key": "RAZOR-405", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-06T15:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting (before 4pm)", "timeSpent": "PT0S", "updated": "2015-01-06T15:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Scott and I smoke tested el5, el7, fedora 19, trusty, lucid, squeeze, precise\n\nOn all systems razor installs correctly.\n\nSuccessul run of `curl http://localhost:8080/api` on el7, trusty, fedora 19, and precise. For the other systems, the version of postgresql was not sufficient.", "created": "2015-01-06T12:16:00.000000"}], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@95d24c6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9bb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4060968989_*|*_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": "11772", "fixedVersions": [], "id": "11772", "issueType": "Sub-task", "key": "RAZOR-404", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-06T12:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2015-01-06T12:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "SHAs:\n\n- razor-server: c4dc720\n- razor-client: a8b6e04", "created": "2014-11-21T14:16:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "http://jenkins-release.delivery.puppetlabs.net/job/razor-server-packaging-2015-01-05-15-57-35-0.16.0/? and http://jenkins-release.delivery.puppetlabs.net/job/razor-client-packaging-2015-01-05-15-57-40-0.16.0/? succeeded, packages available at http://builds.puppetlabs.lan/razor-server/0.16.0/ and http://builds.puppetlabs.lan/razor-client/0.16.0/", "created": "2015-01-05T17:16:00.000000"}], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@582c5289"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9b3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3992160448_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "11708", "fixedVersions": [], "id": "11708", "issueType": "Sub-task", "key": "RAZOR-403", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-05T17:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2015-01-05T17:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@382b866a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9av:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1758747_*|*_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": "11544", "fixedVersions": [], "id": "11544", "issueType": "Sub-task", "key": "RAZOR-402", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2014-11-20T12:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2014-11-20T12:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Assigned to [~accountid:557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c] due to lack of permissions.", "created": "2014-11-20T12:41:00.000000"}, {"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "RAZOR 0.16.0 closed\n\nNext Version = RAZOR 0.17.0\n\nIntroduced in RAZOR 0.16.0 = https://puppet.atlassian.net/issues/?filter=13003\n\nFixes for RAZOR 0.17.0 = https://puppet.atlassian.net/issues/?filter=13004", "created": "2014-11-21T11:15:00.000000"}, {"author": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]Bumped this back to you to verify I did what you needed. If we are good, close it. If not let me know what I should fix.", "created": "2014-11-21T11:16:00.000000"}], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@12887507"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9an:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "21/Nov/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_82875083_*|*_10009_*:*_1_*:*_1955689_*|*_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": "11398", "fixedVersions": [], "id": "11398", "issueType": "Sub-task", "key": "RAZOR-401", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-11-21T11:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2014-11-21T11:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6dc1a4d2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9af:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1508433_*|*_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": "11325", "fixedVersions": [], "id": "11325", "issueType": "Sub-task", "key": "RAZOR-400", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2014-11-20T12:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2014-11-20T12:38:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is done by the packaging tool.", "created": "2014-11-20T12:37:00.000000"}], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@72567012"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx9a7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1460466_*|*_5_*:*_1_*:*_4074605094_*|*_6_*:*_1_*:*_0"}], "description": "Bump VERSION in lib/RAZOR/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": "11178", "fixedVersions": [], "id": "11178", "issueType": "Sub-task", "key": "RAZOR-399", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-11-20T12:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2015-01-06T16:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5db2e606"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx99z:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_817449_*|*_5_*:*_1_*:*_84095407_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_7097"}], "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": "11018", "fixedVersions": [], "id": "11018", "issueType": "Sub-task", "key": "RAZOR-398", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-11-20T12:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2014-11-21T11:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@58f0c353"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx99r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_811067_*|*_5_*:*_1_*:*_84101843_*|*_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": "10951", "fixedVersions": [], "id": "10951", "issueType": "Sub-task", "key": "RAZOR-397", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-11-20T12:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2014-11-21T11:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3897fc67"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx99j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_787345_*|*_5_*:*_1_*:*_84067743_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%220.16.0%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11892", "fixedVersions": [], "id": "11892", "issueType": "Sub-task", "key": "RAZOR-396", "labels": [], "originalEstimate": "PT0S", "parent": "11912", "parentSummary": "Razor 0.16.0 2015-01-05 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-11-20T12:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2014-11-21T11:47:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0cbf1c7f6a007049e5b9", "attachments": [], "comments": [], "components": [], "created": "2014-11-20T12:13:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@487cf6f4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyx99b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4076030893_*|*_6_*:*_1_*:*_0"}], "description": "Razor 0.16.0 2015-01-05 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": "11912", "fixedVersions": [], "id": "11912", "issueType": "Task", "key": "RAZOR-395", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-01-06T16:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor 0.16.0 2015-01-05 Release", "timeSpent": "PT0S", "updated": "2015-01-06T16:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Release went out officially on 1/6 afternoon.", "created": "2015-01-08T12:07:00.000000"}], "components": [], "created": "2014-11-19T11:47:00.000000", "creator": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@615930e5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypgef:"}, {"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": "08/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_1879272142_*|*_3_*:*_1_*:*_250078008_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_2191863312"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11322", "fixedVersions": [], "id": "11322", "issueType": "Task", "key": "RAZOR-394", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:f1e252bd-73da-4e0e-90f7-f0aefb98d28c", "resolution": "Fixed", "resolutionDate": "2015-01-08T12:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support release 0.16.0", "timeSpent": "PT0S", "updated": "2015-01-08T12:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Last I checked, the jessie cows were broken. They need to be fixed before this can happen", "created": "2015-04-13T17:30:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "This will not happen until we have updated the razor pathing, at which point we will release it everywhere", "created": "2015-09-25T16:36:00.000000"}], "components": [], "created": "2014-11-17T15: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@16f6285f"}, {"fieldName": "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": "CPR-111"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hz1j3r:"}, {"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] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9230688646_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1878714360_*|*_10006_*:*_1_*:*_6130203_*|*_10005_*:*_2_*:*_15843107963"}], "epicLinkSummary": "Please provide repository for Debian jessie", "estimate": "PT0S", "externalId": "11911", "fixedVersions": [], "id": "11911", "issueType": "Task", "key": "RAZOR-560", "labels": [], "originalEstimate": "PT0S", "parent": "60269", "parentSummary": "Please provide repository for Debian jessie", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-09-25T16:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "add jessie to razor-server build_defaults", "timeSpent": "PT0S", "updated": "2015-09-25T16:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Workaround is `gem install pe-razor-client --no-ri`.", "created": "2014-11-17T12:01:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Per [this issue|https://github.com/bundler/bundler/issues/2484], it is a bug in RubyGems and the fix is `gem update --system`.", "created": "2014-11-20T11:25:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] We should document this known issue for Razor. I will verify the work-a-round today.", "created": "2014-11-20T11:49:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing as this has not been an issue lately.", "created": "2015-12-09T11:23:00.000000"}], "components": ["Client"], "created": "2014-11-17T11:57:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b117157"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:151c148a-2bb4-4fdc-9320-df94e73b0363"}, {"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|hyx6n3:"}, {"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_*:*_257289680_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_33177477197"}], "description": "h1. Description\n\nIf a user installs the Razor client gem they will receive an error message after installation:\n\n{panel}ERROR:  While executing gem ... (NoMethodError)\n    undefined method `map' for Gem::Specification:Class{panel} \n\n*NOTE:* The Razor client functions fine after installation.\n\nh2. Attachments\n\n* None\n\nh2. Repro Steps\n\n# Install PE master.\n# Verify master is operational.\n# Install PE Razor Server via module on separate sever.\n# On the Razor Server install the Razor client using the command:\n{panel}gem install pe-razor-client{panel}\n\nh2. Expect\n\nThe Razor client should install successfully.\n\nh2. Actual\n\nThe Razor client installs and is operational, but the user receives an error message during installation:\n\n{panel}Building native extensions.  This could take a while...\nDepending on your version of ruby, you may need to install ruby rdoc/ri data:\n\n<= 1.8.6 : unsupported\n = 1.8.7 : gem install rdoc-data; rdoc-data --install\n = 1.9.1 : gem install rdoc-data; rdoc-data --install\n>= 1.9.2 : nothing to do! Yay!\nSuccessfully installed mime-types-1.25.1\nSuccessfully installed multi_json-1.10.1\nSuccessfully installed json-1.8.1\nSuccessfully installed rdoc-4.1.2\nSuccessfully installed rest-client-1.6.8\nSuccessfully installed terminal-table-1.4.5\nSuccessfully installed pe-razor-client-0.15.2.2\n7 gems installed\nInstalling ri documentation for mime-types-1.25.1...\nInstalling ri documentation for multi_json-1.10.1...\nInstalling ri documentation for json-1.8.1...\nInstalling ri documentation for rdoc-4.1.2...\nInstalling ri documentation for rest-client-1.6.8...\nInstalling ri documentation for terminal-table-1.4.5...\nInstalling ri documentation for pe-razor-client-0.15.2.2...\nERROR:  While executing gem ... (NoMethodError)\n    undefined method `map' for Gem::Specification:Class{panel}", "environment": "Master: CentOS 6.5 x64\nRazor Server: CentOS 6.5. x64", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11396", "fixedVersions": [], "id": "11396", "issueType": "Bug", "key": "RAZOR-392", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Cannot Reproduce", "resolutionDate": "2015-12-09T11:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "PE Razor Client Gem Installation Returns Error", "timeSpent": "PT0S", "updated": "2015-12-09T11:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Last I checked, the utopic cows were broken. They need to be fixed before this can happen.", "created": "2015-04-13T17:29:00.000000"}, {"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Utopic goes EOL on 2015-07-23[1], so this work isn't needed.\n\n[1] - https://lists.ubuntu.com/archives/ubuntu-announce/2015-July/000197.html", "created": "2015-07-22T11:58:00.000000"}], "components": [], "created": "2014-11-03T16: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@302182f7"}, {"fieldName": "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": "CPR-92"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypd13:"}, {"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] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_10434443912_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1878820661_*|*_10006_*:*_1_*:*_6222037_*|*_10005_*:*_2_*:*_10210281972"}], "epicLinkSummary": "Provide packages for Utopic Unicorn (14.10)", "estimate": "PT0S", "externalId": "10950", "fixedVersions": [], "id": "10950", "issueType": "Task", "key": "RAZOR-564", "labels": [], "originalEstimate": "PT0S", "parent": "60462", "parentSummary": "Provide packages for Utopic Unicorn (14.10)", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Won't Fix", "resolutionDate": "2015-07-22T11:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add utopic to razor-server build_defaults", "timeSpent": "PT0S", "updated": "2015-07-22T11:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "First off, is this a customer escalation or something you ran into in your own testing ?\n\nSecond, can you attach the files for your task ?\n\nAlso, what version of Razor are you using ?", "created": "2014-11-05T11:03:00.000000"}, {"author": "623a45e9562ab90069f7e2d1", "body": "[root@razor ~]# razor --version\nRazor Server version: 0.15.1.1\nRazor Client version: 0.15.2\n[root@razor ~]#\n\nthat's the version, thanks\n", "created": "2015-01-15T23:06:00.000000"}, {"author": "623a45e9562ab90069f7e2d1", "body": " install\nurl --url=<%= repo_url %>\ncmdline\nlang en_US.UTF-8\nkeyboard us\nrootpw <%= node.root_password %>\nnetwork --hostname <%= node.hostname %>\nfirewall --enabled --ssh\nauthconfig --enableshadow --passalgo=sha512\ntimezone --utc America/Los_Angeles\n# Avoid having 'rhgb quiet' on the boot line\nbootloader --location=mbr --append=\"crashkernel=auto\"\n# The following is the partition information you requested\n# Note that any partitions you deleted are not expressed\n# here so unless you clear all partitions first, this is\n# not guaranteed to work\nzerombr\n#clearpart --all --initlabel\n\nclearpart --all --initlabel --drives=sda\npart /boot --fstype=ext3 --size=500 --ondisk=sda\npart pv.45 --size=1 --grow --ondisk=sda\n\n\n\nvolgroup  rootdg --pesize=16384 pv.45\nlogvol / --fstype=ext3 --name=rootvol --vgname=rootdg --size=30720\nlogvol /var --fstype=ext3 --name=varvol  --vgname=rootdg --size=30720\nlogvol /disk01 --fstype=ext3 --name=diskvol --vgname=rootdg --size=100 --grow\n\n# reboot automatically\nreboot\n\n# following is MINIMAL https://partner-bugzilla.redhat.com/show_bug.cgi?id=593309\n\n%packages\n@admin-tools\n@base\n@core\n@development-libs\n@development-tools\n@editors\n@gnome-desktop\n@graphical-internet\n@openfabrics-enterprise-distribution\n@system-tools\n@text-internet\n@base-x\nsystem-config-kickstart\nkexec-tools\nfipscheck\nsquashfs-tools\ndevice-mapper-multipath\nsgpio\nimake\nemacs\n-libsane-hpaio\nktune\nOpenIPMI-gui\nwatchdog\nlsscsi\ne4fsprogs\nhwbrowser\ncreaterepo\naudit\nsystem-config-network-tui\nopenssh-clients\nxorg-x11-utils\nxorg-x11-server-Xnest\nxorg-x11-server-Xvfb\ncurl\nopenssh-clients\nopenssh-server\nsystem-config-network-tui\ndmidecode\n-zisofs-tools\n-nmap\n-xdelta\n-openldap-clients\n-bluez-hcidump\n-zsh\n\n#%end\n\n%post --log=/var/log/razor.log\necho Kickstart post\ncurl -s -o /root/razor_postinstall.sh <%= file_url(\"post_install\") %>\ncurl -s -o /root/server.txt http://razor/server.txt\ncurl -s -o /root/ip-static-config.sh http://razor/ip-static-config.sh\n# Run razor_postinstall.sh on next boot via rc.local\nif [ ! -f /etc/rc.d/rc.local ]", "created": "2015-01-15T23:07:00.000000"}, {"author": "557058:fba4c131-aa30-4295-a1e1-8b3f9398190b", "body": "We are having the same issue - RHEL5.10, Razor GA with PE 3.8.1.\n\nIs there a workaround?  I already had to workaround kickstart only using port 80 with RHEL5 (setup an http server).", "created": "2015-08-12T11:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "E Salberg has written up documentation around this: https://github.com/puppetlabs/razor-server/wiki/Installing-RHEL5.", "created": "2016-03-16T16:52:00.000000"}], "components": [], "created": "2014-10-29T12:01: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@7525cefb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywy7r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Nov/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_42303624341_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_1259517812"}], "description": "I am testing OracleLinux5.7 installation in Razor   Officially Razor doesn\u2019t seems support Redhat 5 installation, that\u2019s why I guess they didn\u2019t even provide the Redhat 5 Base(kickstart template). \n\nHere is what I did and issues I meet. Basically i copied Redhat 6 base and converted it to Redhat OS5. \n\nhere is what I see in EL5 installation. \nFirst, here is a successful example of EL6 installation\n\n{noformat}\n2014-10-28T12:35:09+00:00 | boot | microkernel | boot | microkernel | info | | | | | | \n| 2014-10-28T12:36:05+00:00 | bind | | | | info | vbox-node1 | | | | | \n| 2014-10-28T12:36:05+00:00 | | | | | info | vbox-node1 | reboot | | | | \n| 2014-10-28T12:36:45+00:00 | boot | redhat | boot_install | oraclelinux | info | | | | | | \n| 2014-10-28T12:37:13+00:00 | get_file | | kickstart | | info | | | http://razor:8080/svc/file/6/kickstart | | | \n| 2014-10-28T12:40:07+00:00 | get_file | | post_install | | info | | | http://razor:8080/svc/file/6/post_install | | | \n| 2014-10-28T12:40:07+00:00 | stage_done | | | | info | | | | kickstart | | \n| 2014-10-28T12:40:57+00:00 | boot | redhat | boot_local | oraclelinux | info | | | | | | \n| 2014-10-28T12:41:17+00:00 | store_metadata | | | | info | | | | | | \n| 2014-10-28T12:41:20+00:00 | stage_done | | | | info | | | | finished | | \n+---------------------------+----------------+-------------+--------------+-------------+----------+------------+--------+-------------------------------------------+-----------+------+\n{noformat}\n\nThis is for EL5:\n\nFrom http://localhost:8080/api/collections/nodes/node5/log:\n{noformat}\n+---------------------------+----------+-------------+--------------+----------------+----------+------------+--------+-----------------------------------+ \n| timestamp | event | task | template | repo | severity | policy | action | url | \n+---------------------------+----------+-------------+--------------+----------------+----------+------------+--------+-----------------------------------+ \n| 2014-10-28T12:21:10+00:00 | boot | microkernel | boot | microkernel | info | | | | \n| 2014-10-28T12:22:07+00:00 | bind | | | | info | vbox-node3 | | | \n| 2014-10-28T12:22:07+00:00 | | | | | info | vbox-node3 | reboot | | \n| 2014-10-28T12:22:55+00:00 | boot | redhat57 | boot_install | oraclelinux5.7 | info | | | | \n| 2014-10-28T12:23:18+00:00 | get_file | | kickstart | | info | | | http://razor/svc/file/5/kickstart | \n| 2014-10-28T12:30:39+00:00 | boot | redhat57 | boot_install | oraclelinux5.7 | info | | | | \n| 2014-10-28T12:31:02+00:00 | get_file | | kickstart | | info | | | http://razor/svc/file/5/kickstart | \n| 2014-10-28T12:34:24+00:00 | boot | redhat57 | boot_install | oraclelinux5.7 | info | | | | \n+---------------------------+----------+-------------+--------------+----------------+----------+------------+--------+-----------------------------------+\n{noformat}\nI am able to get EL5 installed , but however EL5 got a wrong port for the Razor server, so the server will restart and re-install again and again. Unless Razor server get confirmation said finished. \nIt also caused client not able to perform the Post installation that Razor provide to get the basic setting such as network, hosts , and other jobs done\n\nAfter digging more, it seems there is a bug or compatible issue between iPEX and EL5. EL5 seems passed wrong variable to razor server. Unfortunately I am in a deployment, won\u2019t be able to digging more to fix it\n\nhere is another example after change iPEX setting\n{noformat}\n| timestamp | event | task | template | repo | severity | policy | action | url | \n+---------------------------+----------+-------------+--------------+---------------+----------+------------+--------+---------------------------------------------+ \n| 2014-10-28T16:19:26+00:00 | boot | microkernel | boot | microkernel | info | | | | \n| 2014-10-28T16:20:22+00:00 | bind | | | | info | vbox-node3 | | | \n| 2014-10-28T16:20:22+00:00 | | | | | info | vbox-node3 | reboot | | \n| 2014-10-28T16:21:05+00:00 | boot | redhat57 | boot_install | oraclelinux57 | info | | | | \n| 2014-10-28T16:21:38+00:00 | get_file | | kickstart | | info | | | http://razor/svc/file/10/kickstart | \n| 2014-10-28T16:24:31+00:00 | boot | redhat57 | boot_install | oraclelinux57 | info | | | | \n| 2014-10-28T16:24:53+00:00 | get_file | | kickstart | | info | | | http://192.168.56.101/svc/file/10/kickstart | \n| 2014-10-28T16:26:44+00:00 | boot | redhat57 | boot_install | oraclelinux57 | info | | | | \n| 2014-10-28T16:27:07+00:00 | get_file | | kickstart | | info | | | http://192.168.56.101/svc/file/10/kickstart\n{noformat}\nso during the EL5 installation. It is missing the {{:8080}} on the URL .\n\nI do not know if this problem is from IPXE or EL5.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11909", "fixedVersions": [], "id": "11909", "issueType": "Bug", "key": "RAZOR-390", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623e797fd32a94006a65d711", "resolution": "Fixed", "resolutionDate": "2016-03-16T16:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Missing port on Oracle Linux 5.7 nodes", "timeSpent": "PT0S", "updated": "2016-03-16T16:53:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "623e76afd32a94006a65d63d", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/303.", "created": "2015-04-22T02:42:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 7b60ad6.", "created": "2015-04-23T14:57:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4], by 'update-hook-metadata', did you mean 'update-hook-configuration'? Since I haven't seen 'update-hook-metadata' in the below --help list:\n{code}\n[root@razor-server-1 counter.hook]# razor\nUsage: razor [FLAGS] NAVIGATION\n    -d, --dump                       Dumps API output to the screen\n    -a, --api                        Show API help for a command\n    -k, --insecure                   Allow SSL connections without verified certificates\n    -u, --url URL                    The full Razor API URL, can also be set\n                                     with the RAZOR_API environment variable\n                                     (default https://localhost:8151/api)\n    -v, --version                    Show the version of Razor\n    -h, --help                       Show this screen\n\n    Collections:\n        brokers\n        commands\n        events\n        hooks\n        nodes\n        policies\n        repos\n        tags\n        tasks\n\n      Navigate to entries of a collection using COLLECTION NAME, for example,\n      'nodes node15'  for the  details of a node or 'nodes node15 log' to see\n      the log for node15\n\n    Commands:\n        add-policy-tag\n        create-broker\n        create-hook\n        create-policy\n        create-repo\n        create-tag\n        create-task\n        delete-broker\n        delete-hook\n        delete-node\n        delete-policy\n        delete-repo\n        delete-tag\n        disable-policy\n        enable-policy\n        modify-node-metadata\n        modify-policy-max-count\n        move-policy\n        reboot-node\n        register-node\n        reinstall-node\n        remove-node-metadata\n        remove-policy-tag\n        run-hook\n        set-node-desired-power-state\n        set-node-hw-info\n        set-node-ipmi-credentials\n        update-hook-configuration\n        update-node-metadata\n        update-policy-task\n        update-repo-task\n        update-tag-rule\n\n      Pass arguments to commands either directly by name ('--name=NAME')\n      or save the JSON body for the  command  in a file and pass it with\n      '--json FILE'.  Using --json is the only way to pass  arguments in\n      nested structures such as the configuration for a broker.\n\n[root@razor-server-1 counter.hook]#\n{code}", "created": "2015-04-30T16:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0]: That's correct", "created": "2015-04-30T16:58:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "is this on track for testing to be completed prior to sprint end 5/6? ", "created": "2015-05-04T13:26:00.000000"}, {"author": "623e76afd32a94006a65d63d", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] It should be. I've validated the update-hook-configuration and run-hook features (simulate-hook is not a new feature). [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] Not getting the desired json output in the event logs for store_hook_input/output. \nHere are the steps taken to verify the store_hook_input/output features:\n1) run \"razor hooks counter --full\" to compare with after the config.yaml is updated\n2) add to /etc/puppetlabs/razor/config.yaml: \"store_hook_input: true\" and \"store_hook_output: true\", (as noted in the config.yaml.sample)\n3) \"/bin/systemctl restart  pe-razor-server.service\"\n4) \"razor hooks counter --full\" and ensure unchanged\n5) \"razor run-hook --name counter --event node-registered --node node1\" , ensure no json errors\n6) view /var/log/pe-razor-server/server.log for hooks input/ouput json - no change noted between a \"true\" and \"false\" setting.\nPlease advise if there is a step missing from the validation to account for the lack of json logging.", "created": "2015-05-04T13:57:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The input/output should show up in the `razor events` or `razor hooks\ncounter log` entry, not the server log.\n", "created": "2015-05-04T14:16:00.000000"}, {"author": "623e76afd32a94006a65d63d", "body": "Thanks Scott. Tested the 9 possible variations of store_hook_input/output, logging to \"razor hooks counter log\" and \"razor events\" all performed as expected. ", "created": "2015-05-04T18:02:00.000000"}], "components": ["Server"], "created": "2014-10-21T17:31:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@204e0a3c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyovpr:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "30/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1221425_*|*_1_*:*_1_*:*_15202177002_*|*_10007_*:*_1_*:*_130513422_*|*_3_*:*_1_*:*_555654576_*|*_5_*:*_1_*:*_5782178499_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_960269807"}], "description": "Writing hooks in Razor is currently a lot of trial and error. There's difficulty figuring out what the input to the hook was, what the exact output was, and even triggering the event to fire. Several tools could help with this:\n\n- Add an `update-hook-configuration` command that will allow the user to update the configuration inside a hook. This way, whenever a hook is executed, its side effects can be easily reverted.\n- Add a `run-hook` or `simulate-hook` command that will simulate a hook running, calling the relevant hook scripts with real arguments and returning the output.\n- Add a debugging config option to record input and output in the relevant event's entry object. `store_hook_output` and/or `store_hook_input` could be names for this config.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11017", "fixedVersions": ["RAZOR 1.0.1"], "id": "11017", "issueType": "Improvement", "key": "RAZOR-388", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-05-04T18:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Improve UX for writing hooks", "timeSpent": "PT0S", "updated": "2015-07-10T16:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is solved currently using one of three methods:\n* The {{protect_new_nodes}} config property,\n* Supplying {{hw_info}} to {{register-node}}, which is what we use to match nodes anyway, and\n* Restricting {{max_count}} on policies so provisioning won't happen unless needed.\n\nI hope one of these three routes is acceptable for the use case in the description of this ticket. If not, please open another.", "created": "2016-03-02T01:58:00.000000"}], "components": ["Server"], "created": "2014-10-03T15:20:00.000000", "creator": "623c135ca2f6400069eb7c31", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@24a60c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Capitalized?", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Yes"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywlnb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_44537872202_*|*_6_*:*_1_*:*_0"}], "description": "In a \"brownfield\" deployment, nodes that already have an OS and will not be going through the Microkernel don't have a way to provide facts. In a mixed environment, if only nodes that have been through the Microkernel have facts, facts will not be a reliable property to expect.\n\nOne workaround would be to provide fact-like data as node-metadata - that would mean, however, that nodes that *did* go through the Microkernel will have duplicated data.\n\nA somewhat nicer workaround (which I'm requesting with this ticket :)) would be to able to provide a facts object to {{register-node}} - users could populate this with choice output from {{facter}}, or manually gathered data in environments that do not have {{facter}}.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11890", "fixedVersions": [], "id": "11890", "issueType": "New Feature", "key": "RAZOR-384", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c135ca2f6400069eb7c31", "resolution": "Won't Fix", "resolutionDate": "2016-03-02T01:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow `register-node` to provide facts", "timeSpent": "PT0S", "updated": "2016-03-02T01:58:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:a928746f-29e4-4dcd-b814-7503e569a5c9", "body": "Could this be more easily solved by an installing node making all required calls against the policy at one time (ex., downloading all the required files at once)?", "created": "2014-10-01T11:31:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I think that would require that people annotate their installers and brokers since we can't generally deduce all the things that an installer will load from the server", "created": "2014-10-01T11:52:00.000000"}, {"author": "557058:b62c47a4-37e4-460d-8791-518bdfebf3e8", "body": "This would be awesome. Just a note that we have a bunch of experience with the AWS/vSphere/Azure modules writing tests for this sort of thing, and developed a few patterns that are probably applicable. Ping me, [~accountid:557058:68216498-c6bf-4e8f-92c1-ac84887b7c02], [~accountid:557058:0391846d-6964-433c-9bfd-0cf76723122b] or [~accountid:557058:c737f20a-b831-4320-b376-844fe0567ee8] if and when you get to this for a demo.", "created": "2016-01-08T01:44:00.000000"}], "components": [], "created": "2014-09-30T22:12:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Node Management"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e6c6b32"}, {"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-4"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Puppet mgmt of Razor"}, {"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_blue"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqw7r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "01/Oct/14"}], "description": "It should be possible to manage the provisioning setup of a Razor server through Puppet. On the face of it, it seems like a fairly simple exercise:\n\n* add idempotent check-and-set-* commands for any object in the system (repo, broker, policy, ...)\n* use these commands to back types and providers in https://github.com/puppetlabs/puppetlabs-razor\n\nThe major issue with this is that a naive implementation makes it possible that, for example, a policy changes while a node is in the middle of installating against it leading to very strange results. So far, the assumption has been that the execution of commands is coordinated with provisioning activity in some way outside the system. Once we manage Razor with Puppet, that's no longer a sane assumption.\n\nTo address this properly, we need to change the guts of Razor in the following way:\n\n* all database objects become versioned and immutable, with one version being marked as 'latest' - that's the only one that a user sees in the API.\n* updating a database object does no longer update the object in place - it creates a new version with the changed attributes; similarly, deleting it simply marks it as deleted in the DB.\n* relations between DB objects (e.g. policy and broker) are between specific versions of these objects, as is the binding of a node to a policy\n* anything that can be changed through Puppet types needs to live in the DB (that would include tasks) or can be versioned externally (e.g., repos by including a version number in their directory name)\n\nOne way to achieve that, and still be able to have unique constraints on our various objects is to add a NOT NULL int version column to all DB tables, and use the convention that version == 0 means 'current' and version == id means 'old version'.\n\nAt some point, we might have to gc old versions, though I am hopeful that churn in the server setup is small enough that that is not an immediate issue.\n\nNote: This work is similar to https://forge.puppetlabs.com/Lavaburn/razor.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11357", "fixedVersions": ["RAZOR 2.0"], "id": "11357", "issueType": "Epic", "key": "RAZOR-383", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "status": "Open", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor should be manageable through Puppet", "timeSpent": "PT0S", "updated": "2018-05-31T20:41:00.000000", "votes": "5", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PRs https://github.com/puppetlabs/razor-client/pull/52 and https://github.com/puppetlabs/razor-server/pull/256.", "created": "2014-11-06T12:45:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit cbd13f0 and razor-client commit 73e9951.", "created": "2014-11-18T14:03:00.000000"}], "components": ["Client", "DOCS", "Server"], "created": "2014-09-24T10:41:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7dca97cd"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypj5r:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_51143_*|*_1_*:*_3_*:*_1364817948_*|*_10007_*:*_1_*:*_1041537753_*|*_3_*:*_4_*:*_1239714364_*|*_5_*:*_1_*:*_4242140906_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1121636543"}], "description": "When the user runs `razor events`, the output can get unwieldy fast. This should by default return the first N (~20) rows, with a windowing option.\n\nEach command should have its own second getopt parser. `razor --dump events --start 50` should be legal.\n\nExamples:\n\n`razor events` => Shows most recent 20 events.\n`razor events --start 50` => Shows most recent 20 events, skipping the first 50.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11207", "fixedVersions": ["RAZOR 0.16.0"], "id": "11207", "issueType": "Bug", "key": "RAZOR-382", "labels": [], "originalEstimate": "PT0S", "parent": "11540", "parentSummary": "IPAM support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-11-18T14:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Limit events returned from Razor", "timeSpent": "PT0S", "updated": "2015-01-12T11:27:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Since changing the view would be a larger API change, I suggest we make the change as an alias in the command parameters and accept both \"hostname_pattern\" as well as the current \"hostname\".", "created": "2016-03-02T01:52:00.000000"}], "components": ["DOCS", "Server"], "created": "2014-09-18T15:33:00.000000", "creator": "557058:a928746f-29e4-4dcd-b814-7503e569a5c9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1d0a3db0"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:v"}, {"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": "02/Mar/16"}], "description": "These should be made consistent wherever possible.\n\n* create uses hostname, view uses hostname_pattern\n* create has hostname and root-password as top level objects, view has hostname_pattern and root_password in a \"configuration\" map\n\n*In Scope*\n* Rename \"hostname\" to \"hostname_pattern\" in {{create-policy}}.\n* Add alias \"hostname\" to {{create-policy}} command for backwards compatibility.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11015", "fixedVersions": [], "id": "11015", "issueType": "Story", "key": "RAZOR-381", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a928746f-29e4-4dcd-b814-7503e569a5c9", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Fix create/view inconsistencies in policy", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:a928746f-29e4-4dcd-b814-7503e569a5c9", "body": "Opened two PRs to solve this:\n\n* https://github.com/puppetlabs/razor-server/pull/253\n* https://github.com/puppetlabs/razor-client/pull/51", "created": "2014-09-18T17:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Thanks for the issue and PR. There are a few more cases we needed covered, so the server-side portion will be tracked by https://github.com/puppetlabs/razor-server/pull/280.", "created": "2015-03-03T19:21:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The updates to standardize these attributes have been merged.", "created": "2015-04-01T21:01:00.000000"}], "components": ["Client", "Server"], "created": "2014-09-18T14:00:00.000000", "creator": "557058:a928746f-29e4-4dcd-b814-7503e569a5c9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6b901f1"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hywepb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "04/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_16873244579_*|*_6_*:*_1_*:*_0"}], "description": "This is mostly inconsistencies in the use of the dash and underscore in attribute names, though there a few other inconsistencies as well.\n\nHere's what I've found so far:\n\nbroker:\n\n* create and view both use dash (broker-type)\n\nrepo:\n\n* create uses dash (iso-url)\n* view uses underscore (iso_url)\n\npolicy:\n\n* create uses dash (max-count, root-password, node-metadata)\n* view uses underscore (max_count, root_password, node_metadata)\n\ntask:\n\n* create and view both use underscore (boot_seq)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11356", "fixedVersions": ["RAZOR 1.0"], "id": "11356", "issueType": "Improvement", "key": "RAZOR-380", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a928746f-29e4-4dcd-b814-7503e569a5c9", "resolution": "Fixed", "resolutionDate": "2015-04-01T21:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Normalize inconsistencies in attribute names", "timeSpent": "PT0S", "updated": "2015-06-04T13:29:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Note - can now update broker configuration. Per [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] remaining work is likely audit of remaining properties that we would want to change in place and adding support for this.", "created": "2016-01-06T16:53:00.000000"}], "components": ["Server"], "created": "2014-09-11T17:55:00.000000", "creator": "557058:a928746f-29e4-4dcd-b814-7503e569a5c9", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7ab82947"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-383"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:u"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Jun/15"}], "description": "Even something as simple as broker requires a delete / re-add of the object to make changes to the object's properties. This quickly becomes unmaintainable  once other objects bind themselves to it.\n\nThis is pretty much a requirement if someone is interested in any sort of config management with Razor.\n\n*In Scope*\n* Go through each Razor object and make a list of which properties should be modifiable via a new (or existing) command.\n* Create tickets to implement/modify these commands.", "epicLinkSummary": "Razor should be manageable through Puppet", "estimate": "PT0S", "externalId": "10948", "fixedVersions": [], "id": "10948", "issueType": "Improvement", "key": "RAZOR-379", "labels": ["Easy"], "originalEstimate": "PT0S", "parent": "11357", "parentSummary": "Razor should be manageable through Puppet", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:a928746f-29e4-4dcd-b814-7503e569a5c9", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "(Spike) All Razor objects should allow in-place update", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T11:46:00.000000"}], "components": [], "created": "2014-09-08T16:08:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ad97654"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyw8kf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_21325080867_*|*_6_*:*_1_*:*_0"}], "description": "Even on a moderately used Razor server, the output of 'razor commands' becomes quickly unusable. It would be great to add the following:\n\n* -limit the number of commands to show by passing \\-\\-size or similar- (This is included via `\\-\\-limit`)\n* allow listing only commands that are not in state 'finished'\n* allow listing only commands that happened since some date/time\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10947", "fixedVersions": [], "id": "10947", "issueType": "Bug", "key": "RAZOR-378", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T11:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "'razor commands' needs some navigation improvement", "timeSpent": "PT0S", "updated": "2015-05-13T11:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623e76afd32a94006a65d63d", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] to repro/validate", "created": "2015-03-31T15:49:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/302.", "created": "2015-04-14T16:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 25b5a7a.", "created": "2015-04-16T11:58:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you promote this and get it into a build? ", "created": "2015-04-16T19:29:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Verified with build: Puppet Enterprise 4.0.0-rc2-790-g529e929\n{code}\n$ razor create-repo --name foo --url http://example.org/ --task noop\nFrom https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/repos/foo:\n\n     name: foo\n  iso_url: ---\n      url: http://example.org/\n     task: noop\n  command: https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/commands/1\n{code}\n\nThe status of the task changed from 'running' to 'finished'\n{code}\n{\n\"spec\": \"http://api.puppetlabs.com/razor/v1/collections/commands/member\",\n\"id\": \"https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/commands/1\",\n\"name\": \"1\",\n\"command\": \"create-repo\",\n\"params\": {\n\"name\": \"foo\",\n\"url\": \"http://example.org/\",\n\"task\": \"noop\"\n},\n\"errors\": [],\n\"status\": \"finished\",\n\"submitted_at\": \"2015-04-22T13:25:08-07:00\",\n\"finished_at\": \"2015-04-22T13:25:24-07:00\"\n}\n{code}\n\nTest 2:\n{code}\nPhongs-MacBook-Pro:Downloads phongly$ razor create-repo --name fedora21 --url  http://mirrors.n-ix.net/fedora/linux/releases/21/Server/x86_64/os/ --task fedora\nFrom https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/repos/fedora21:\n\n     name: fedora21\n  iso_url: ---\n      url: http://mirrors.n-ix.net/fedora/linux/releases/21/Server/x86_64/os/\n     task: ---\n  command: https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/commands/2\n\nPhongs-MacBook-Pro:Downloads phongly$\n{code}\n\nThe status is also changing from 'running' to 'finished'\n{code}\n{\n\"spec\": \"http://api.puppetlabs.com/razor/v1/collections/commands/member\",\n\"id\": \"https://razor-server-1.delivery.puppetlabs.net:8151/api/collections/commands/2\",\n\"name\": \"2\",\n\"command\": \"create-repo\",\n\"params\": {\n\"name\": \"fedora21\",\n\"url\": \"http://mirrors.n-ix.net/fedora/linux/releases/21/Server/x86_64/os/\",\n\"task\": \"fedora\"\n},\n\"errors\": [],\n\"status\": \"finished\",\n\"submitted_at\": \"2015-04-22T13:35:56-07:00\",\n\"finished_at\": \"2015-04-22T13:35:57-07:00\"\n}\n{code}", "created": "2015-04-22T14:39:00.000000"}], "components": ["Server"], "created": "2014-09-08T16:01:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@61d51189"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypb93:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_294556362_*|*_1_*:*_1_*:*_17617493461_*|*_10007_*:*_1_*:*_155990511_*|*_5_*:*_1_*:*_6831139476_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_233536103_*|*_10004_*:*_1_*:*_1212584611_*|*_10005_*:*_1_*:*_7351391"}], "description": "When creating a repo with a URL:\n{code}\nrazor create-repo --name foo --url http://example.org/ --task noop\n{code}\n\nthe command tracking the repo creation stays in state 'running' indefinitely. The problem is that the background machinery for downloading and unpacking an ISO is still kicked off (and fails), even though none of that is necessary.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11543", "fixedVersions": ["RAZOR 1.0.1"], "id": "11543", "issueType": "Bug", "key": "RAZOR-377", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2015-04-22T14:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "create-repo with --url never seems to finish", "timeSpent": "PT0S", "updated": "2015-07-10T16:12:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/251.", "created": "2014-09-08T11:20:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 00cf1b4.", "created": "2014-09-10T10:12:00.000000"}], "components": [], "created": "2014-09-08T11:07: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@24164b5f"}, {"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|hypr5r:"}, {"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/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_767087_*|*_1_*:*_1_*:*_794584_*|*_10007_*:*_1_*:*_168689325_*|*_5_*:*_1_*:*_10220491486_*|*_6_*:*_1_*:*_0"}], "description": "Shiro had a release to address CVE-2014-0074. Here is the release announcement: http://mail-archives.apache.org/mod_mbox/shiro-dev/201403.mbox/%3CCAH9eYVrCp8pGXJiZM2F-9-h2z-hk+gGSk5GkhLs_wf-E_DVQ5Q@mail.gmail.com%3E", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11889", "fixedVersions": ["RAZOR 0.16.0"], "id": "11889", "issueType": "Task", "key": "RAZOR-376", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "resolution": "Fixed", "resolutionDate": "2014-09-10T10:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update shiro to 1.2.3", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/49.", "created": "2014-09-02T11:13:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit 77feaa4.", "created": "2014-09-10T10:27:00.000000"}], "components": ["Client"], "created": "2014-09-02T11:02:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@90e94b7"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypr5j:"}, {"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_*:*_5417_*|*_1_*:*_1_*:*_659432_*|*_10007_*:*_1_*:*_688473178_*|*_5_*:*_1_*:*_10220330725_*|*_6_*:*_1_*:*_0"}], "description": "When a help page is requested but does not exist, e.g. `razor nodes --help`, the command is either executed anyway or an inaccurate error message is thrown. This case should instead respond with a message like: \"Could not find help for that entry\".", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11206", "fixedVersions": ["RAZOR 0.16.0"], "id": "11206", "issueType": "Bug", "key": "RAZOR-375", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-09-10T10:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor should throw error when help is requested but does not exist", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/249.\n\nFixed in razor-server commit 38aa766.", "created": "2014-08-29T12:59:00.000000"}], "components": ["Server"], "created": "2014-08-29T12:16:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b1ab398"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypr5b:"}, {"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_*:*_339288305_*|*_1_*:*_1_*:*_352484_*|*_10007_*:*_1_*:*_2253570_*|*_5_*:*_1_*:*_10908710518_*|*_6_*:*_1_*:*_0"}], "description": "On earlier versions of Sinatra, the initrd.gz download for e.g. Ubuntu would hang at a specific percentage because the [Content-Length was not being included|https://github.com/sinatra/sinatra/issues/739]. This was fixed in version 1.4.4, and so this gem should be pinned to this version or later.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11355", "fixedVersions": ["RAZOR 0.16.0"], "id": "11355", "issueType": "Bug", "key": "RAZOR-374", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-09-02T11:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "initrd.gz download stalls on old versions of Sinatra", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This may better serve as an epic, since it links to several refactoring and general documentation improvements that should be made together. (Description updated.)\n\nEDIT: Done, RAZOR-736.", "created": "2015-12-08T23:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The epic, RAZOR-752, should be settled by UX prior to proceeding with this ticket. Marking it as Needs Information.", "created": "2016-03-02T01:46:00.000000"}], "components": ["Server"], "created": "2014-08-26T10:50:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2c738f2"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-752"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:t"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}], "description": "The current help text for each command contains a string like:\n\n{noformat}\n# Access Control\n\nThis command's access control pattern: `commands:create-policy:%{name}`\n\nWords surrounded by `%{...}` are substitutions from the input data: typically\nthe name of the object being modified, or some other critical detail, these\nallow roles to be granted partial access to modify the system.\n\nFor more detail on how the permission strings are structured and work, you can\nsee the [Shiro Permissions documentation][shiro].  That pattern is expanded\nand then a permission check applied to it, before the command is authorized.\n\nThese checks only apply if security is enabled in the Razor configuration\nfile; on this server security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n{noformat}\n\nThis only contains two pieces of data which are useful on a regular basis:\n# The shiro string\n# Whether security is enabled on the server\n\nThe explanation should be moved to another location and merely referenced in the command's help. Several changes need to be made:\n\n*In Scope*\n- Create a help entry for `authentication`, which just outputs the above text\n- Shorten the help text for all commands to include only:\n  Access control pattern: `commands:create-policy:%\\{name\\}`\n  Server security status: Disabled\n  For more information, see: `razor help authentication`\n\n*Out of Scope*\n- Building a framework for adding help pages (should be done prior to this ticket)", "epicLinkSummary": "Restructure Razor CLI Help", "estimate": "PT0S", "externalId": "11888", "fixedVersions": [], "id": "11888", "issueType": "Bug", "key": "RAZOR-373", "labels": [], "originalEstimate": "PT0S", "parent": "11441", "parentSummary": "Restructure Razor CLI Help", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Ready for Engineering", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Move authentication explanation to its own help", "timeSpent": "PT0S", "updated": "2021-12-08T02:48:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-client/pull/47.", "created": "2014-08-22T18:58:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit c3c197f.", "created": "2014-08-26T16:12:00.000000"}], "components": ["Client"], "created": "2014-08-22T18:52:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3e84a505"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypsd3:"}, {"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_*:*_6728130_*|*_1_*:*_1_*:*_404712_*|*_10007_*:*_1_*:*_335597192_*|*_5_*:*_1_*:*_11488938903_*|*_6_*:*_1_*:*_0"}], "description": "Trying to create an entity with a name like \"a=b\" fails. This should handle that case by anticipating the datatype and only applying the appropriate mutations for that datatype. It's currently converting \"a=b\" to a JSON object of `\\{\"a\": \"b\"\\}` regardless of what is expected.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11908", "fixedVersions": ["RAZOR 0.16.0"], "id": "11908", "issueType": "Bug", "key": "RAZOR-372", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-08-26T18:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Cannot handle \"=\" in names", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/254.", "created": "2014-09-24T15:20:00.000000"}], "components": ["DOCS"], "created": "2014-08-21T16:29:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5b60da3d"}, {"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|hypoa7:"}, {"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": "24/Sep/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_288744_*|*_1_*:*_2_*:*_4150259979_*|*_10007_*:*_1_*:*_1126031406_*|*_5_*:*_1_*:*_6650016213_*|*_6_*:*_1_*:*_0"}], "description": "Hooks should be run at the following times:\n\n* When a node is first discovered and has registered its facts (before then we can not be sure that we are looking at a new node)\n* When a node is bound to a policy - booting into the installer should not happen until all hook scripts related to this event have finished, as they might set up things needed by the installer\n* When a node is unbound from a policy, and therefore becomes eligible for reinstallation\n* When a node has been deleted\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11394", "fixedVersions": ["RAZOR 0.16.0"], "id": "11394", "issueType": "Improvement", "key": "RAZOR-371", "labels": [], "originalEstimate": "PT0S", "parent": "11540", "parentSummary": "IPAM support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-10-21T18:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add hooks to specific points in a node's lifecycle", "timeSpent": "PT0S", "updated": "2015-01-21T11:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/259.", "created": "2014-11-10T17:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed by razor-server commit 5b8330b.", "created": "2014-11-18T14:04:00.000000"}], "components": ["DOCS"], "created": "2014-08-21T16:21:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@335e5664"}, {"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|hypj5z:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "11/Nov/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_21715_*|*_1_*:*_1_*:*_6643438994_*|*_10007_*:*_1_*:*_677647735_*|*_3_*:*_1_*:*_363865060_*|*_5_*:*_1_*:*_4242100093_*|*_6_*:*_2_*:*_1279952595_*|*_10005_*:*_1_*:*_27384"}], "description": "Since hook scripts are user-supplied and may therefore take a long time to complete, they need to be run asynchronously. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10946", "fixedVersions": ["RAZOR 0.16.0"], "id": "10946", "issueType": "Improvement", "key": "RAZOR-370", "labels": [], "originalEstimate": "PT0S", "parent": "11540", "parentSummary": "IPAM support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-11-18T14:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Run hook scripts asynchronously", "timeSpent": "PT0S", "updated": "2015-01-21T11:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/254.", "created": "2014-09-23T16:35:00.000000"}], "components": ["Server"], "created": "2014-08-21T15:49:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4a163d6a"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypo9z:"}, {"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": "23/Sep/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_289003_*|*_1_*:*_2_*:*_3624690418_*|*_10007_*:*_1_*:*_1133627744_*|*_3_*:*_1_*:*_520375875_*|*_5_*:*_1_*:*_6650018609_*|*_6_*:*_1_*:*_0"}], "description": "When certain events are generated, make sure we run the hooks that respond to the event, and track their success/failure within the event.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11887", "fixedVersions": ["RAZOR 0.16.0"], "id": "11887", "issueType": "Improvement", "key": "RAZOR-369", "labels": [], "originalEstimate": "PT0S", "parent": "11540", "parentSummary": "IPAM support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-10-21T18:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Run hook scripts when an event is triggered", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This task includes JSON input and JSON output for the node.", "created": "2014-09-10T10:47:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/254.", "created": "2014-09-23T16:35:00.000000"}], "components": ["DOCS", "Server"], "created": "2014-08-21T15:45:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@51a116d6"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypo9r:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "10/Sep/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_795507_*|*_1_*:*_2_*:*_3024812498_*|*_10007_*:*_2_*:*_1133627922_*|*_3_*:*_2_*:*_1120007298_*|*_5_*:*_1_*:*_6650020323_*|*_6_*:*_1_*:*_0"}], "description": "Add a hook object, supporting commands and the necessary plumbing to run hooks synchronously following the design doc at https://gist.github.com/lutter/e1d316459c77c063b20b", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11907", "fixedVersions": ["RAZOR 0.16.0"], "id": "11907", "issueType": "Improvement", "key": "RAZOR-368", "labels": [], "originalEstimate": "PT0S", "parent": "11540", "parentSummary": "IPAM support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-10-21T18:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add 'hooks' as first-class objects", "timeSpent": "PT0S", "updated": "2015-01-12T11:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/252.", "created": "2014-09-11T13:36:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/50.", "created": "2014-09-11T18:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit dc8cc0f and razor-client commit c446f94.", "created": "2014-09-22T13:09:00.000000"}], "components": ["DOCS", "Server"], "created": "2014-08-21T15:43:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6f381d62"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypo9j:"}, {"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/Sep/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_180678497_*|*_1_*:*_1_*:*_1204287823_*|*_10007_*:*_1_*:*_948786882_*|*_3_*:*_1_*:*_602488305_*|*_5_*:*_1_*:*_8993163941_*|*_6_*:*_1_*:*_0"}], "description": "The events collection will track important events happening on a server, especially for a node's lifecycle.\n\nIt will replace the node log in that each node's log will become a node-centric view into the global event stream.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11770", "fixedVersions": ["RAZOR 0.16.0"], "id": "11770", "issueType": "Improvement", "key": "RAZOR-367", "labels": [], "originalEstimate": "PT0S", "parent": "11540", "parentSummary": "IPAM support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-09-24T15:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create toplevel 'events' collection", "timeSpent": "PT0S", "updated": "2015-01-12T11:35:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/244.", "created": "2014-08-18T16:09:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit f189873.", "created": "2014-08-19T12:02:00.000000"}], "components": ["Server"], "created": "2014-08-18T13:17:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@50db9a03"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypscv:"}, {"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_*:*_2457051_*|*_1_*:*_1_*:*_10338457_*|*_10007_*:*_1_*:*_71565339_*|*_5_*:*_1_*:*_12112983466_*|*_6_*:*_1_*:*_0"}], "description": "On Ubuntu Precise, the error: \"mirror does not support the specified release\" occurs. Turns out this is due to a change to how the preseed file is fetched.\n\nThe preseed/url method mutates the hostname if it does not contain a period (e.g. \"http://razor-server:8080\" turns into \"http://razor-server.example.com:8080\"). To fix this, part of the work in RAZOR-326 included fetching the preseed file via initrd then using preseed/file instead of preseed/url. This works fine for Trusty, but is problematic for Precise. In order to fix this issue, it seems that *for Precise and Lucid, a razor server URL will have to have a period in the name, either by IP or just in the hostname.*\n\nThe fix from RAZOR-326 will continue to be used in the base, effective for Trusty and later releases.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11886", "fixedVersions": ["RAZOR 0.16.0"], "id": "11886", "issueType": "Bug", "key": "RAZOR-366", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-08-19T12:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ubuntu Precise task needs preseed/url instead of preseed/file", "timeSpent": "PT0S", "updated": "2015-03-30T10:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/243.\n\nFixed by 8ae01b0.", "created": "2014-08-18T12:20:00.000000"}], "components": ["Server"], "created": "2014-08-18T12:15:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2d783989"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypscn:"}, {"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_*:*_185435_*|*_1_*:*_1_*:*_353197_*|*_5_*:*_1_*:*_12200543445_*|*_6_*:*_1_*:*_0"}], "description": "In Trusty, the squashfs preseed config is pointing to a local file on razor server, rather than a URL to razor-server.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11885", "fixedVersions": ["RAZOR 0.16.0"], "id": "11885", "issueType": "Bug", "key": "RAZOR-365", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-08-18T12:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Trusty not finding squashfs file", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/242.", "created": "2014-08-15T15:58:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 3bdce1f.", "created": "2014-08-19T12:03:00.000000"}, {"author": "623c0ad4d32a94006a6494f3", "body": "Discussed this with Scott yesterday and we determined that there's no actual impact on the docs. Removing DOCS component from the ticket.", "created": "2015-01-22T15:32:00.000000"}], "components": ["Server"], "created": "2014-08-15T15:48:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@d0502b"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypscf:"}, {"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/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_2407174_*|*_1_*:*_1_*:*_262721439_*|*_10007_*:*_1_*:*_69375106_*|*_5_*:*_1_*:*_12112989744_*|*_6_*:*_1_*:*_0"}], "description": "The `all` parameter is not involved in the function of the `update-node-metadata command. It should be removed, since its use case is already handled by the `modify-node-metadata` command: The `modify-node-metadata` can be called with either the `clear` argument to remove all keys, or the `update` argument to set all keys to certain values.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11768", "fixedVersions": ["RAZOR 0.16.0"], "id": "11768", "issueType": "Bug", "key": "RAZOR-364", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-08-19T12:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "`all` parameter of `update_node_metadata` has no effect", "timeSpent": "PT0S", "updated": "2015-02-12T17:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "62450167f6a26900695cde66", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Three thumbs up from me", "created": "2014-08-13T11:16:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Merged as commit c161830f", "created": "2014-08-15T16:54:00.000000"}], "components": [], "created": "2014-08-12T16:37: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@395880cd"}, {"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|hyvuq7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Aug/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_77306823_*|*_10007_*:*_1_*:*_7909208_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_175033500"}], "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": "11766", "fixedVersions": [], "id": "11766", "issueType": "Task", "key": "RAZOR-362", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2014-08-15T16:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Remove saucy from build_defaults.yaml in razor-server", "timeSpent": "PT0S", "updated": "2014-08-15T16:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/260.", "created": "2014-11-21T14:08:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 16c5d4a.", "created": "2014-12-19T20:13:00.000000"}], "components": ["DOCS", "Server"], "created": "2014-08-12T16:12:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4408285a"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypge7:"}, {"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/Nov/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_16735_*|*_1_*:*_1_*:*_8722541734_*|*_10007_*:*_1_*:*_2441269965_*|*_5_*:*_1_*:*_1541397150_*|*_6_*:*_1_*:*_0"}], "description": "In some cases, it is necessary to unpack an ISO manually (e.g., Windows ISO's that libarchive can't read)\n\nIn those cases it would be great if the create-repo command took a '--no-content' option or similar so that it would create the repo internally, and a blank directory on disk.\n\nUsers could then populate that repo manually by logging into the Razor server.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11014", "fixedVersions": ["RAZOR 0.16.0"], "id": "11014", "issueType": "Improvement", "key": "RAZOR-361", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-12-19T20:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "The create-repo command should have a 'no-content' option", "timeSpent": "PT0S", "updated": "2015-01-21T12:21:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "It should report these too:\n\n- /svc/file/$node/raw/$file: Report missing files\n- /svc/file/$node/template: Report missing templates\n- /svc/broker/$node/install: Report the request and/or that the file is missing\n- /svc/log/$node: Reports if the node does not exist in the system (in case a node gets deleted but needs to log something)\n- /svc/repo/*: Report in `events` when the file path is not found", "created": "2015-03-07T01:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/285.", "created": "2015-03-07T01:49:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 7dcb156.", "created": "2015-03-11T19:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Marking resolved since it is just logging/debugging.", "created": "2015-03-11T19:21:00.000000"}], "components": [], "created": "2014-08-12T15:16:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c72a27e"}, {"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|hyxutr:"}, {"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": "Helpful with task work already in sprint"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_299563_*|*_1_*:*_1_*:*_17839969409_*|*_10007_*:*_1_*:*_404851091_*|*_5_*:*_1_*:*_7710854602_*|*_6_*:*_1_*:*_0"}], "description": "Requests to /svc/file get logged in a node's log; there is no indication in the log whether the request succeeded or failed.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11906", "fixedVersions": ["RAZOR 1.0"], "id": "11906", "issueType": "Improvement", "key": "RAZOR-360", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2015-03-11T19:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Node log should reflect failed requests to /svc/file", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0", "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "I'm removing this from the Razor Exiting Tech Preview epic on the assumption that it will not be a blocker for the Q1 GA release. Please correct if this is in accurate.\n\n", "created": "2015-01-05T14:56:00.000000"}, {"author": "623c0ad4d32a94006a6494f3", "body": "2 story points for Docs", "created": "2015-01-22T11:30:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This could also work as a flag for the `reinstall-node` command", "created": "2015-06-10T11:10:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/310.", "created": "2015-07-08T17:45:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] and [~accountid:557058:a69e978d-6cea-49f9-9227-3a3ef8a776c0] - could you comment w/story point estimate? ", "created": "2015-07-10T11:47:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 594ace8.", "created": "2015-07-10T16:30:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "2 for dev.", "created": "2015-07-11T01:55:00.000000"}], "components": [], "created": "2014-08-12T15:15:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@93080d0"}, {"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": "623e76afd32a94006a65d63d"}, {"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|hyoxcf:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_412723791_*|*_1_*:*_1_*:*_28520973206_*|*_10007_*:*_1_*:*_168350347_*|*_5_*:*_1_*:*_8911330171_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1822320256"}], "description": "When developing tasks (and testing policies) it would be nice to be able to reset a node so that it starts whatever task/policy it is bound to again without going through the Microkernel.\n\nInternally, this command would roughly do the following:\n{quote}\npsql> update nodes set boot_count=1, installed_at=null, installed=null where id = the_node_id;\n{quote}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11764", "fixedVersions": ["RAZOR 1.1.0"], "id": "11764", "issueType": "Improvement", "key": "RAZOR-359", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2015-08-05T13:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add command to rerun a policy", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/270.", "created": "2015-01-14T13:43:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit ae3ab84.", "created": "2015-01-28T13:09:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] does this need QA attention before we can call this issue resolved?", "created": "2015-02-04T07:33:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c] I think he fix is in FOSS but not in PE yet. I would be able to mark the subtask done after testing it on PE\n", "created": "2015-02-05T12:09:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you do the merge from razor-server to pe-razor-server and trigger the promotion, or has this been done already? Per conversation, I think we may want to start doing this on a routine basis (weekly or more) to make sure we don't get work piled up for review in PE.", "created": "2015-02-05T13:46:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Completion yields a message like this in `razor nodes <name> log --full`:\n{code}\n  timestamp: 2014-09-11T18:40:02-05:00\n      event: stage_done\n      stage: broker\n   severity: info\n{code}", "created": "2015-02-11T18:25:00.000000"}], "components": ["Server"], "created": "2014-08-06T17:07:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "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": "A logged entry noting the successful completion of a broker handoff."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@418ea96e"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypb7b:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Feb/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_88145_*|*_1_*:*_1_*:*_13891995051_*|*_10007_*:*_1_*:*_682545896_*|*_3_*:*_2_*:*_534696913_*|*_10009_*:*_1_*:*_11711900_*|*_4_*:*_1_*:*_3810_*|*_5_*:*_2_*:*_10137076819_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_1209567498"}], "description": "As a user, I want Razor to tell me when the broker script has finished, so that I know when a node has entered my Puppet Enterprise environment.\n\nThere is currently no reporting on the execution of the broker script for each node. A call to the `stage-done` /svc URL would cause a note to go into the node's log that the broker has finished and the node is transitioned out of Razor.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11905", "fixedVersions": ["RAZOR 1.0"], "id": "11905", "issueType": "Story", "key": "RAZOR-357", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Blocker", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2015-02-11T18:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Report \"stage-done\" for brokers", "timeSpent": "PT0S", "updated": "2015-07-21T14:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/258.", "created": "2014-11-06T12:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 679b247.", "created": "2014-11-18T12:09:00.000000"}], "components": ["DOCS", "Server"], "created": "2014-07-30T11:41:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@133b8478"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypj67:"}, {"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_*:*_8560960105_*|*_10007_*:*_1_*:*_1034712296_*|*_5_*:*_1_*:*_4249004402_*|*_6_*:*_1_*:*_0"}], "description": "Running `razor-admin` from any directory other than `razor-server` fails with an exception like the following:\n\n{noformat}\n[root@razor-server ~]# /opt/puppet/share/razor-server/bin/razor-admin migrate-database\nLoadError: no such file to load -- fast_gettext\n           require at org/jruby/RubyKernel.java:1084\n           require at /opt/puppet/share/torquebox/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:55\n            (root) at /opt/puppet/share/razor-server/lib/razor/gettext_setup.rb:3\n           require at org/jruby/RubyKernel.java:1084\n            (root) at /opt/puppet/share/torquebox/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:1\n           require at /opt/puppet/share/torquebox/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:55\n  require_relative at file:/opt/puppet/share/torquebox/jruby/lib/jruby.jar!/jruby/kernel19/kernel.rb:21\n           require at org/jruby/RubyKernel.java:1084\n            (root) at /opt/puppet/share/razor-server/lib/razor/initialize.rb:2\n            (root) at /opt/puppet/share/torquebox/jruby/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:1\n            (root) at /opt/puppet/share/razor-server/bin/razor-admin:68\n{noformat}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11203", "fixedVersions": ["RAZOR 0.16.0"], "id": "11203", "issueType": "Bug", "key": "RAZOR-356", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-11-18T12:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "`razor-admin` cannot be run from absolute path", "timeSpent": "PT0S", "updated": "2015-01-21T12:32:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/240.\n\nFixed in commit 43379ba.", "created": "2014-08-04T12:14:00.000000"}], "components": [], "created": "2014-07-30T09:51:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@55760da3"}, {"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|hypvcn:"}, {"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": "04/Aug/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_361127481_*|*_1_*:*_1_*:*_15658207_*|*_3_*:*_1_*:*_424902581_*|*_5_*:*_1_*:*_13049600908_*|*_6_*:*_1_*:*_0"}], "description": "Right now, we only serve install.erb which expands to a Bash script.\n\nTo also allow for a Windows variant for the same broker, we'd want the task to pass in which script to use (e.g. install.erb vs install-windows.erb)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11884", "fixedVersions": ["RAZOR 0.16.0"], "id": "11884", "issueType": "Improvement", "key": "RAZOR-355", "labels": [], "originalEstimate": "PT0S", "parent": "11392", "parentSummary": "Razor GA Platform Support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-08-08T16:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tasks should be able to request different broker scripts", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "After significant effort trying to get build-razor-winpe.ps1 script to run on 2008r2, it looks like this will not be possible. From the error below, it looks like one of the modules is just not supported for 2008r2, and caused an error that looks non-trivial:\n\n{code}\nImport-Module : The 'C:\\Program Files (x86)\\Windows Kits\\8.1\\Assessment and Dep\nloyment Kit\\Deployment Tools\\amd64\\DISM\\DISM.psd1' module cannot be imported be\ncause its manifest contains one or more members that are not valid. The valid m\nanifest members are ('ModuleToProcess', 'NestedModules', 'GUID', 'Author', 'Com\npanyName', 'Copyright', 'ModuleVersion', 'Description', 'PowerShellVersion', 'P\nowerShellHostName', 'PowerShellHostVersion', 'CLRVersion', 'DotNetFrameworkVers\nion', 'ProcessorArchitecture', 'RequiredModules', 'TypesToProcess', 'FormatsToP\nrocess', 'ScriptsToProcess', 'PrivateData', 'RequiredAssemblies', 'ModuleList',\n 'FileList', 'FunctionsToExport', 'VariablesToExport', 'AliasesToExport', 'Cmdl\netsToExport'). Remove the members that are not valid ('HelpInfoUri', 'RootModul\ne'), then try to import the module again.\nAt C:\\Users\\Administrator\\Downloads\\razor-server-master\\razor-server-master\\bui\nld-winpe\\build-razor-winpe.ps1:134 char:14\n+ import-module <<<<  \"$deploymentTools\\DISM\"\n    + CategoryInfo          : InvalidData: (C:\\Program File...\\DISM\\DISM.psd1:\n   String) [Import-Module], InvalidOperationException\n    + FullyQualifiedErrorId : Modules_InvalidManifestMember,Microsoft.PowerShe\n   ll.Commands.ImportModuleCommand\n{code}\n\nI will default back to building the winpe on 2012r2 and see if that same winpe can be used for a 2008r2 task.\n\nh4. Progress\nGetting to the issue above involved two other changes to the build-razor-winpe.ps1 script, which will not be committed now, but exist here in case the effort is revived:\n1. `ProgramFilesX86` isn't included as an environment special folder, even though the directory exists. This required some manual work, via:\n{code}\n$programFiles = [Environment]::GetFolderPath('ProgramFiles')\n\tforeach ($folder in $folders) {\n\t\t# Just looking for ProgramFilesX86 in list.\n\t\tif ($folder -eq \"ProgramFilesX86\") {\n\t\t\tbreak\n\t\t}\n\t\t$folder = $programFiles\n\t}\n\tif ($folder -eq $programFiles) {\n\t\t# This might be 2008r2, in which case we should check to see whether\n\t\t# the x86 folder exists anyway. 2008r2 does not include this folder\n\t\t# in the special folders, unfortunately.\n\t\t$x86Path = \"$programFiles (x86)\"\n\t\tif ( ( test-path $x86Path ) ) {\n\t\t\t$folder = $x86Path\n\t\t}\n\t}\n{code}\n2. `import-module dism` needs a full path, so I replaced it with this:\n{code}\n$deploymentTools = ( join-path $adk \"..\\..\\Deployment Tools\\amd64\" )\nimport-module \"$deploymentTools\\DISM\"\n{code}", "created": "2014-11-25T14:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "With the ADK, using direct DISM calls results in a successful winpe.wim build, but during installation produces an error:\n\n{noformat}\n    setup.exe - Entry Point Not Found\n    The procedure entry point ??0WString2@@QEAA@XZ could not be located in the dynamic link library X:\\windows\\system32\\wbem\\fastprox.dll.\n{noformat}", "created": "2014-12-18T18:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "With the WAIK, injecting Powershell into the winpe.wim is nontrivial. The WinPE_NetFX and WinPE_Powershell optional packages are absent. Stuck on this for now, since the install script exits due to the unrecognized `powershell` command.", "created": "2014-12-18T18:06:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Per conversation with [~accountid:623e7ac8562ab90069f9ed9b] and [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] this isn't going to be a blocker for the Q1 Release, but if we have time we'll consider it.", "created": "2015-01-05T14:38:00.000000"}], "components": [], "created": "2014-07-30T09:44:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Scrum Team/s", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiselect", "value": "Node Management Services"}, {"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c40c96c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Color", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-color", "value": "red"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Support Installation of Windows 2008r2"}, {"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": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "grey"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyoxo7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "0.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Nov/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_4_*:*_20382905185_*|*_3_*:*_2_*:*_9602522942_*|*_6_*:*_1_*:*_0_*|*_10013_*:*_1_*:*_2017053807_*|*_10004_*:*_1_*:*_774665670_*|*_10014_*:*_1_*:*_7876703918"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11353", "fixedVersions": ["RAZOR 1.1.0"], "id": "11353", "issueType": "Epic", "key": "RAZOR-354", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2015-11-12T21:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support Installation of Windows 2008r2", "timeSpent": "PT0S", "updated": "2016-04-12T12:12:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Merged with commit 43e8e9d3", "created": "2014-08-27T10:32:00.000000"}], "components": ["DOCS"], "created": "2014-07-30T09:43:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3e18a2ba"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypsbr:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1212689132_*|*_10007_*:*_1_*:*_1090514640_*|*_3_*:*_1_*:*_118947119_*|*_5_*:*_1_*:*_11429644789_*|*_6_*:*_1_*:*_0"}], "description": "It should be possible to install Windows 2012\n\nSee https://github.com/nanliu/razor-server/tree/win2012/tasks for a start", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11202", "fixedVersions": ["RAZOR 0.16.0"], "id": "11202", "issueType": "Bug", "key": "RAZOR-353", "labels": [], "originalEstimate": "PT0S", "parent": "10943", "parentSummary": "Windows support in Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-08-27T10:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Install task for Windows 2012", "timeSpent": "PT0S", "updated": "2015-01-21T12:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Per conversation with [~accountid:623e7ac8562ab90069f9ed9b] and [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] this isn't going to be a blocker for the Q1 Release, but if we have time we'll consider it.", "created": "2015-01-05T14:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing because Windows 2008R2 is already added as a task. If Windows 2008 (non-R2) is needed, that can be opened as a separate and newer ticket.", "created": "2016-03-02T01:42:00.000000"}], "components": [], "created": "2014-07-30T09:42:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@38368314"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypx2v:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_50173195433_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11013", "fixedVersions": [], "id": "11013", "issueType": "Bug", "key": "RAZOR-352", "labels": [], "originalEstimate": "PT0S", "parent": "10943", "parentSummary": "Windows support in Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Duplicate", "resolutionDate": "2016-03-02T01:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Install task for Windows 2008", "timeSpent": "PT0S", "updated": "2016-03-02T01:42:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/46.\n\nFixed in razor-client commit 66af3c2.", "created": "2014-07-29T18:34:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0], does this have QA sign-off to ship? ", "created": "2014-10-29T15:44:00.000000"}, {"author": "557058:3bbf1c83-df0e-4372-887d-cfc38dee9330", "body": "I spoke with QA and received verbal +1 to ship.", "created": "2014-10-29T15:53:00.000000"}], "components": ["Client"], "created": "2014-07-28T18:24:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5e720f0f"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypvxr:"}, {"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/Oct/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_3938737_*|*_1_*:*_1_*:*_163355_*|*_10007_*:*_1_*:*_3767882_*|*_3_*:*_1_*:*_79132130_*|*_5_*:*_1_*:*_13906291365_*|*_6_*:*_1_*:*_0"}], "description": "From [jeffschantz|https://github.com/jeffshantz]:\n{quote}\nBasic authentication does not work properly in razor-client-0.15.1.\n\nWhen I export RAZOR_API with credentials:\n\n{code}\nexport RAZOR_API=http://username:password@localhost/server\n{code}\nand I run a command like create-repo:\n\n{code}\nrazor create-repo --name=ubuntu-14.04 --iso-url file:///home/vagrant/mini.iso --task ubuntu\n{code}\nit is able to access the main /api URL, but the subsequent request to `/api/commands/create-repo` fails with 401 Unauthorized.\n\nAfter taking a quick look at the source, it would appear that the basic authentication credentials are not being properly inserted into URLs obtained from the API. The initial call to the API succeeds, but all subsequent calls to URLs returned by the API fail.\n\nThis PR is a quick hack to get basic authentication working. I can confirm that things now work properly whether or not I have basic authentication enabled for the Razor server.\n\nThere's probably a much more elegant way of doing this, so feel free to reject this PR, but I thought I'd submit it anyway.\n\nIt works by caching the userinfo of the first request to the API. All subsequent API requests have the userinfo property set to that cached data (or to nil, if there are no credentials specified in the URL).\n{quote}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11117", "fixedVersions": ["RAZOR 0.16.0"], "id": "11117", "issueType": "Bug", "key": "RAZOR-351", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-07-29T18:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client is not passing along authentication data", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/44.", "created": "2014-07-08T16:49:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "From the [rest-client website|http://rubydoc.info/gems/rest-client/1.7.1/frames]: \n\n{noformat}\nRuby 1.8.7 is no longer supported. That's because the Ruby 1.8.7 interpreter itself no longer has official support, not even security patches!\n{noformat}", "created": "2014-07-08T21:59:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit 61a3808.", "created": "2014-07-09T10:25:00.000000"}], "components": ["Client"], "created": "2014-07-08T12:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1ce7a61a"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyusdz:"}, {"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/Jul/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_605026655_*|*_1_*:*_1_*:*_14294420_*|*_10007_*:*_1_*:*_63401836_*|*_3_*:*_1_*:*_944788_*|*_5_*:*_1_*:*_58075284999_*|*_6_*:*_1_*:*_0"}], "description": "razor-client currently has a versionless dependency on the rest-client gem. Previously, rest-client 1.6.8 would work with Ruby > 0. Today, rest-client issued a new release (1.7.0) that only works with Ruby >= 1.9.2.\n\nThe fix, since we need to support older versions of Ruby, is to pin the rest-client gem at version 1.6.8.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11705", "fixedVersions": [], "id": "11705", "issueType": "Improvement", "key": "RAZOR-342", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client cannot install on Ruby < 1.9.2", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/236.", "created": "2014-07-07T12:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Verified successful startup and basic command usage with Torquebox 3.1.1 + JRuby 1.7.13.", "created": "2014-07-07T12:32:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 12a11a8.", "created": "2014-07-30T10:15:00.000000"}], "components": ["Server"], "created": "2014-07-02T09:28:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@32b4d752"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypvx3:"}, {"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": "07/Jul/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_167167087_*|*_1_*:*_1_*:*_28860509_*|*_10007_*:*_1_*:*_1812012529_*|*_3_*:*_1_*:*_413942050_*|*_5_*:*_1_*:*_13849912264_*|*_6_*:*_1_*:*_0"}], "description": "* Upgrade to the latest Torquebox: http://torquebox.org/news/2014/06/26/torquebox-3-1-1-released/\n\n* request an update of the attendant packaging: https://confluence.puppetlabs.com/display/DEL/Puppet+Enterprise+Vendored+Project+Change+Requests", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10945", "fixedVersions": ["RAZOR 0.16.0"], "id": "10945", "issueType": "Improvement", "key": "RAZOR-339", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-07-30T10:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Upgrade to Torquebox 3.1.1", "timeSpent": "PT0S", "updated": "2015-09-01T12:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/pe_acceptance_tests/pull/484.", "created": "2014-06-30T01:42:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 8aeb77d.", "created": "2014-06-30T02:28:00.000000"}, {"author": "70121:b72c16a2-594d-45f8-90bc-c6bc6c9510a8", "body": "No sign of any current razor test issues (of course you never know with the random names ", "created": "2014-06-30T09:45:00.000000"}], "components": [], "created": "2014-06-30T01:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@234d8811"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypze7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "0.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_26211747_*|*_1_*:*_1_*:*_394213_*|*_10007_*:*_1_*:*_2759738_*|*_5_*:*_1_*:*_16443669825_*|*_6_*:*_1_*:*_0"}], "description": "Razor's acceptance testing includes random name generation. For tasks in particular, '$' is an illegal character and should be disallowed in the task name for that test.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11200", "fixedVersions": ["RAZOR 0.16.0"], "id": "11200", "issueType": "Bug", "key": "RAZOR-337", "labels": ["impacting-pe-ci", "pe-ci-integration"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-30T09:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tasks cannot have '$' in task name", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/233.", "created": "2014-06-27T14:00:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 2cb7eff.", "created": "2014-06-30T12:14:00.000000"}], "components": ["Server"], "created": "2014-06-27T13:58:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@469c8e79"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypzdz:"}, {"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_*:*_166966053_*|*_1_*:*_1_*:*_125650_*|*_10007_*:*_1_*:*_252839924_*|*_5_*:*_1_*:*_16267745982_*|*_6_*:*_1_*:*_0"}], "description": "When the user runs an outdated `create-policy` command that was intended to create a tag, the user sees the unhelpful:\n{noformat}\n  error: tags[0] should be a string, but was actually a object\n{noformat}\n\nThis should instead read:\n{noformat}\n  error: this command can no longer create tags; see `razor help create-tag`\n{noformat}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11350", "fixedVersions": ["RAZOR 0.16.0"], "id": "11350", "issueType": "Improvement", "key": "RAZOR-336", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-07-02T10:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "`create-policy` should warn that it no longer creates tags", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "62450167f6a26900695cde66", "attachments": [], "comments": [{"author": "62450167f6a26900695cde66", "body": "https://github.com/puppetlabs/razor-server/pull/231\n", "created": "2014-06-26T16:52:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Merged as commit 8f14859f", "created": "2014-06-27T06:17:00.000000"}], "components": [], "created": "2014-06-26T12:17: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@78b4f7b2"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuu1b:"}, {"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_*:*_64827743_*|*_5_*:*_1_*:*_16715330676_*|*_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. The fact that we also don't test this build, but still ship packages for this platform is also questionable", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11704", "fixedVersions": ["RAZOR 0.16.0"], "id": "11704", "issueType": "Bug", "key": "RAZOR-335", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "resolution": "Fixed", "resolutionDate": "2014-06-27T06:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Remove sid/unstable from razor-server", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is tricky because space characters become \"+\" in CGI, but \"%20\" in URI.", "created": "2014-06-24T20:20:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:40:00.000000"}], "components": ["Server"], "created": "2014-06-24T19:33:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@13b28266"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyusov:"}, {"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": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_27875213629_*|*_6_*:*_1_*:*_0"}], "description": "The URI library does not escape \"?\", meaning if an entity has a question mark in the name, the \"?\" character will result in an invalid URL for the ID argument. The CGI library should be used instead, since that escapes \"?\" as \"%3F\".", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10944", "fixedVersions": [], "id": "10944", "issueType": "Bug", "key": "RAZOR-334", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Wrong ID is generated if name has question mark", "timeSpent": "PT0S", "updated": "2015-05-13T10:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-client/pull/42", "created": "2014-06-24T15:24:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-client commit 4355a88.", "created": "2014-07-03T12:29:00.000000"}], "components": ["Client"], "created": "2014-06-24T15:11:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7cce51b9"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypx3j:"}, {"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_*:*_1116023267_*|*_1_*:*_1_*:*_815093_*|*_10007_*:*_2_*:*_757019313_*|*_3_*:*_1_*:*_10053592_*|*_5_*:*_1_*:*_15058614546_*|*_6_*:*_1_*:*_0"}], "description": "If an exception occurs while trying to connect to the server (e.g. if the server has an exception which severs the connection, an unrelated and unhandled exception is being thrown like the following:\n\n{noformat}\n/usr/lib/ruby/gems/1.8/gems/razor-client-0.15.1/bin/razor:50: undefined method `args' for nil:NilClass (NoMethodError)\n\t\tfrom /usr/bin/razor:19:in `load'\n\t\tfrom /usr/bin/razor:19\n{noformat}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11865", "fixedVersions": ["RAZOR 0.16.0"], "id": "11865", "issueType": "Improvement", "key": "RAZOR-332", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-07-16T10:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Report when server severs connection", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/227", "created": "2014-06-24T14:16:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit e4f9085.", "created": "2014-06-24T20:28:00.000000"}], "components": ["Server"], "created": "2014-06-24T14:02:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@63b7addc"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypzb3:"}, {"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_*:*_541553194_*|*_1_*:*_1_*:*_792179_*|*_10007_*:*_1_*:*_2443737_*|*_5_*:*_1_*:*_16401842456_*|*_6_*:*_1_*:*_0"}], "description": "Sporadic issues with java heap space are causing some commands to fail.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11349", "fixedVersions": ["RAZOR 0.16.0"], "id": "11349", "issueType": "Improvement", "key": "RAZOR-331", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-30T21:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Occasional heap space issues", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623e7ac8562ab90069f9ed9b", "body": "This should be SLES 11 SP3 and SLES 12 GA (there is no SP yet)", "created": "2015-01-09T12:06:00.000000"}, {"author": "557058:5c808afb-dce6-44a1-922d-296dc2c81fe8", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] estimate on this?", "created": "2015-01-20T16:15:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "1 story point for QA\n", "created": "2015-01-20T16:45:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Ping [~accountid:623c0ad4d32a94006a6494f3] for DOCS points.", "created": "2015-01-20T18:26:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "1 Docs story point.", "created": "2015-02-12T14:17:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T14:24:00.000000"}], "components": ["Server"], "created": "2014-06-24T07:02:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "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": "Razor can provision SLES 11 and SLES 12 nodes."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@21a399f7"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyxrpj:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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": "09/Jan/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_18188617376_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_2392541274_*|*_10005_*:*_1_*:*_7266136029"}], "description": "As a PE Administrator, I want Razor to support SLES 11 and SLES 12 endpoints, so that I can provide provisioning for the full range of SLES-based supported operating systems at my site.\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11904", "fixedVersions": ["RAZOR 1.1.0"], "id": "11904", "issueType": "Story", "key": "RAZOR-327", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T14:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ability to Provision SLES11 and SLES 12 (SP1 and later) with Razor", "timeSpent": "PT0S", "updated": "2015-05-12T14:24:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [{"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2014-07-16T18:21:00.000000", "name": "Ubuntu Precise Preseed Issue.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10186"}, {"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2014-07-21T16:07:00.000000", "name": "Ubuntu Trusty - During Install.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10201"}, {"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2014-07-17T16:47:00.000000", "name": "Ubuntu Trusty Issue.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10164"}, {"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2014-07-18T14:05:00.000000", "name": "Ubuntu Trusty Logs.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10290"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I have verified that the existing i386 task intended for Precise works for [Lucid (10.04)|http://releases.ubuntu.com/10.04/ubuntu-10.04.4-server-i386.iso].\n\n[Precise (12.04)|http://releases.ubuntu.com/12.04/ubuntu-12.04.4-server-i386.iso] yields an error", "created": "2014-07-16T16:01:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Encountered this issue attempting to install Trusty. No details found yet.", "created": "2014-07-17T16:47:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Precise (12.04) now works", "created": "2014-07-17T16:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91]: Can you confirm that the behavior above is correct? Specifically, that the hostname template's domain `.example.com` should be added to the razor-server API endpoint. See the \"Ubuntu Precise Preseed Issue\" image for the URL it tries to pull.", "created": "2014-07-17T19:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The log file cannot be copied from the VM unfortunately (problem installing the Guest Additions in VirtualBox), so here is an unhelpful screenshot of the bottom of the syslog file. I see no obvious errors aside from the `stat: can't stat '/dev/host7/vg': No such file or directory`.", "created": "2014-07-18T14:05:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Found a [link to help with Trusty|http://www.michaelm.info/blog/?p=1378]. The preseed needed an extra argument since Ubuntu changed the way it installs via network and now deploys a separate filesystem (squashfs).", "created": "2014-07-18T19:30:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/238.", "created": "2014-07-20T20:24:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 9937dc1. (Update: Also razor-server commit f5e4400.)", "created": "2014-07-30T10:15:00.000000"}], "components": [], "created": "2014-06-24T07:00:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7cc2f4c0"}, {"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|hypvxj:"}, {"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": "16/Jul/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_94472_*|*_1_*:*_1_*:*_1156257879_*|*_10007_*:*_1_*:*_150394188_*|*_3_*:*_2_*:*_1795906037_*|*_5_*:*_1_*:*_13849912514_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_19400247"}], "description": "The various ubuntu*.task mention 12.04. Make sure they also work for 10.04 and adapt/modify them for that.\n\nProgress:\n~ All testing was done with i386 on VirtualBox.\n~ All tasks require reboot after MK + policy binding; agent does not \"hear\" (or respond to) DHCP's OFFER request.\n~ Policy's hostname is [being included in preseed file URL|https://help.ubuntu.com/lts/installation-guide/amd64/apbs02.html#preseed-auto].\n- Lucid (10.04): Installs\n- Precise (12.04): Installs\n- Trusty (14.04): Installs, but requires manual reboot which lands on the login screen.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11755", "fixedVersions": ["RAZOR 0.16.0"], "id": "11755", "issueType": "Improvement", "key": "RAZOR-326", "labels": [], "originalEstimate": "PT0S", "parent": "11392", "parentSummary": "Razor GA Platform Support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-07-30T10:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Task for Ubuntu LTS 10.04 and 12.04", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] it seems like this is something that we will want to have in before GA because it loosely represents a breaking change. I'm going to mark it as blocker accordingly. cc [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]", "created": "2015-01-06T10:36:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] do we install a custom ruby to support facter in the current implementation of the microkernel, or is it just system ruby?", "created": "2015-01-08T17:41:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:8ee7ce10-5b29-49dc-ad32-53903d0d886c] [~accountid:623c0ad4d32a94006a6494f3] can you comment on estimated story points for this issue, for Eng, QA, and Docs respectively?", "created": "2015-01-12T12:05:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The MK is built using [this kickstart script|https://github.com/puppetlabs/razor-el-mk/blob/master/microkernel.ks]\n\nIn a nutshell, we enable two puppetlabs repos: `http://yum.puppetlabs.com/fedora/f19/products/$basearch` and `http://yum.puppetlabs.com/fedora/f19/dependencies/$basearch` and then pull in facter and rubygems - so we use whatever Ruby they require, which appears to be F19's Ruby.", "created": "2015-01-12T16:17:00.000000"}, {"author": "623c0ad4d32a94006a6494f3", "body": "No Docs impact from this.", "created": "2015-01-22T16:25:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "We are not likely to be able to complete this in time for GA - after discussion with [~accountid:623e7ac8562ab90069f9ed9b] it will not block the GA release.", "created": "2015-02-19T16:14:00.000000"}, {"author": "623c12047910a200718b9434", "body": "I'd just like to add that as a user, I really value being able to add custom facts to the MK, ideally the same facts that I add to Puppet and I depend on my dhcp_server fact for then determining where a server sits in a network relative to puppet masters and all that (although I believe my DHCP fact is now in facter, but its structured, so I have to replace it).  That ability also inspired and facilitated blog posts (and I believe camp talks) such as this:\n\nhttps://puppetlabs.com/blog/server-locality-using-razor-and-lldp\n\nTo me, MK execution, load, facter, checkin etc are not time critical as long as it happens in a time that is reasonable.  Personally I don't see the speed increase as a good trade for flexibility.\n\nThat said, if the only were to be cfacter vs ruby+facter would it be possible for the user to choose between 2 MKs? ", "created": "2015-02-26T19:35:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:623c12047910a200718b9434] thanks for your feedback. I'm not sure if we would ship two different MKs, but I do know that cfacter has support for ruby custom facts (see https://github.com/puppetlabs/cfacter/blob/master/Extensibility.md). cfacter is eventually going to replace ruby facter, but I suppose this doesn't necessarily mean we would have to remove the ruby runtime from the MK (thus removing support for ruby custom facts). ", "created": "2015-02-27T09:59:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Thanks [~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c], that being the case, i have no more concerns :)", "created": "2015-02-27T11:57:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Temporarily moving to backlog for next feature prioritization", "created": "2015-10-23T16:14:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "removing fix version until this is slotted into sprints", "created": "2015-12-22T13:51:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Set to 'needs information' to reflect blocked status on RAZOR-641", "created": "2016-01-25T12:21:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Adjusted to \"Normal\" priority since this would mostly be behind-the-scenes for the user.\n\nEdit: Additionally, if the facter gem begins to include cfacter, this will be completed whenever the microkernel is rebuilt.\n\nI have some questions around structured facts for this ticket too, since our tagging system currently won't work with them.", "created": "2018-03-09T19:36:00.000000"}], "components": ["Microkernel"], "created": "2014-06-24T04:51:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "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 implementation of facter in the microkernel is \"cfacter\"\n\nPossibly in scope but maybe not required: removing ruby from the microkernel?"}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2992cd4d"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:r"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Jan/15"}], "description": "As a Razor Developer, I want the microkernel to run the fastest version of Facter so that the Microkernel can take less time to execute.\n\nAs a Razor Developer, I want the microkernel to run the latest version of Facter, so that I have access to the newest facts shipped.\n\n*In Scope*\n* Remove ruby facter from the microkernel image and install cfacter\n* Confirm custom ruby facts are still operational - while we may do so in the future, we are not breaking compatibility with custom facts at this time\n\n*Out of Scope*\n* Removing the ruby runtime from the microkernel\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11751", "fixedVersions": [], "id": "11751", "issueType": "Story", "key": "RAZOR-319", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Use facter 3 in the Microkernel", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/228", "created": "2014-06-24T18:07:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit f113f41.", "created": "2014-06-24T18:21:00.000000"}], "components": ["Server"], "created": "2014-06-20T15:34:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2e8399c7"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypzd3:"}, {"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_*:*_663368268_*|*_1_*:*_1_*:*_4064513_*|*_10007_*:*_1_*:*_821484_*|*_3_*:*_1_*:*_350704733_*|*_5_*:*_1_*:*_16267745255_*|*_6_*:*_1_*:*_0"}], "description": "Tags and tasks can currently be created in a case-sensitive way, meaning \"mytag\" and \"Mytag\" could both exist, and be different. These should be considered the same tag using case-insensitive comparison.\n\nFor migration, the tag example above would follow the resolution pattern of appending a number: \"mytag\" and \"Mytag1\".\n\nPriority is Major since it is a potentially disruptive change that should be enacted as soon as possible.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11903", "fixedVersions": ["RAZOR 0.16.0"], "id": "11903", "issueType": "Improvement", "key": "RAZOR-313", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-07-02T10:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Case-insensitive uniqueness on tag and task names", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:40:00.000000"}], "components": [], "created": "2014-06-20T15:26:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4af93d99"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuqpj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_28235618187_*|*_6_*:*_1_*:*_0"}], "description": "It should be possible to associate a new broker with an existing policy, replacing the currently active one; e.g., when a policy is created with the 'noop' broker, it should be possible to later change the policy to use the 'puppet' broker.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11744", "fixedVersions": [], "id": "11744", "issueType": "Improvement", "key": "RAZOR-312", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add command to change the broker on an existing policy", "timeSpent": "PT0S", "updated": "2015-05-13T10:40:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I do not understand what the use case for this would be. Closing until a use case can be supplied.", "created": "2016-03-02T01:35:00.000000"}], "components": ["Server"], "created": "2014-06-19T22:05:00.000000", "creator": "70121:95ed5edd-e5c1-4d4d-a23c-d13b152bb405", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@ec7acc7"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuqen:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_53670629369_*|*_6_*:*_1_*:*_0"}], "description": "Microkernel Repo does not appear in repo list, and is not configurable. It would be preferable to be able to configure this repo, and set it's URL to a server other than the razor server.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11113", "fixedVersions": [], "id": "11113", "issueType": "Bug", "key": "RAZOR-311", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "70121:95ed5edd-e5c1-4d4d-a23c-d13b152bb405", "resolution": "Won't Fix", "resolutionDate": "2016-03-02T01:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Microkernel Repo does not appear in repo list, and is not configurable", "timeSpent": "PT0S", "updated": "2016-03-02T01:35:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "999854:fcce5d94-1aee-4ecb-a182-4110a33d70a3", "body": "I am assuming that you are having issues with the client connecting with master and then receiving the SSL cert?  If so let me know.\n\nKey points:\n\n1. Master and client can ping each other?\n2. Cert listed on master?\n3. Cert signed on master?\n4. Assume client does not receive cert? \n\nIf so let me know.  Gwsharkcom@gmail.com\nThere is a way to flush and invalid cert on client and master and have client reacquire on agent.  Let me know.", "created": "2014-06-25T13:26:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] is this still an issue ?", "created": "2014-11-05T11:15:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is still an issue. RestClient::Unauthorized is caught in both cases", "created": "2014-11-05T11:23:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Both cases yield the same error:\n{code}\n[vagrant@razor-server ~]$ razor nodes\nError from doing GET https://localhost:8151/api\n401 Unauthorized\nAccess Denied\n[vagrant@razor-server ~]$ razor -u https://abc:def@localhost:8151/api nodes\nError from doing GET https://abc:def@localhost:8151/api\n401 Unauthorized\nAccess Denied\n{code}", "created": "2016-03-02T01:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "/cc [~accountid:557058:67562e3b-e143-430b-8745-78ffb8c5cc23] on the error messages in the description.", "created": "2016-03-02T01:31:00.000000"}, {"author": "557058:67562e3b-e143-430b-8745-78ffb8c5cc23", "body": "Also ping [~accountid:557058:c9b48d3b-3b16-4fba-80cb-daf19743b953]\n\nMelissa, the messages above sound fine to me. Can you review?", "created": "2016-03-03T10:52:00.000000"}, {"author": "557058:67562e3b-e143-430b-8745-78ffb8c5cc23", "body": "As regards the differentiation, there is discussion (with which I agree) re: moving toward more differentiation in the interest of more clarity. I would prefer to keep these separate, particularly as the CLI doesn't have the GUI's ease of context/input clarification (e.g. fields that can be rendered in an error state).", "created": "2016-03-03T11:41:00.000000"}, {"author": "557058:67562e3b-e143-430b-8745-78ffb8c5cc23", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Any reason for the change from 'and/or' to 'or' for the invalid credentials state?", "created": "2016-03-04T12:33:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:67562e3b-e143-430b-8745-78ffb8c5cc23] [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] \n\nAnd/or is bad writing practice. ", "created": "2016-03-04T12:39:00.000000"}], "components": ["Client"], "created": "2014-06-19T16:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@674821c2"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:q"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Jun/14"}], "description": "The error message, \"Unauthorized\" and \"Access Denied\" are displayed in two cases:\n- No credentials supplied\n- Invalid credentials supplied\n\nThere's currently no way to distinguish between these and the error message suggests that credentials were omitted in either case.\n\n*In Scope*\n* Modify the error messages as appropriate:\n** When no credentials are supplied, use \"Username and password are required.\"\n** When invalid credentials are supplied, use \"Username or password is invalid.\" ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11701", "fixedVersions": [], "id": "11701", "issueType": "Improvement", "key": "RAZOR-310", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "status": "Needs Information", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Authentication error messages are ambiguous", "timeSpent": "PT0S", "updated": "2021-12-08T02:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I wonder whether metadata is the right place to put the data about which task and step the node was executing. It could be more straightforward to add an array-style field to the database, allowing each node to essentially have its own 'stack' of tasks (and steps for each) that it will execute when the current task is done.", "created": "2014-06-18T15:24:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T11:41:00.000000"}], "components": ["Server"], "created": "2014-06-18T15:17:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@34cace22"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq94f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_28412646012_*|*_6_*:*_1_*:*_0"}], "description": "In order to push firmware updates out to Razor-controlled nodes, we need a way to execute ad-hoc tasks on a policy. The story will go something like this:\n# User creates a new task containing the firmware update via `create-task` or on disk.\n# User tells Razor to execute the task on the node via *`execute-task-on-node`* (new).\n# Razor stores the node's progress on its current task in metadata (task name and step).\n# Razor modifies the node's task and step to point to the firmware update.\n# When rebooted, the node will run the firmware update.\n# After execution of the firmware task, Razor will restore progress on the prior task via the node's metadata, deleting the metadata when finished.\n\nMore thoughts on the `execute-task-on-node` command's arguments:\n- --task (name of the task)\n- --node (name of the node)\n\nAdditionally, an `execute-task-on-nodes-with-tag` (or even `execute-task-on-all-nodes`) command might be helpful for mass-updating nodes, which would execute the task on every node matching the tag:\n- --task (name of the task)\n- --tag (name of tag)\n\nWhether metadata for \"has already run the firmware update\" should be added to the node is an open question. That would allow for, e.g., running a firmware update on all nodes with a certain tag that haven't already run it.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11112", "fixedVersions": [], "id": "11112", "issueType": "New Feature", "key": "RAZOR-308", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T11:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow pushing firmware updates", "timeSpent": "PT0S", "updated": "2015-05-13T11:41:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "I am not sure if we should insist to the user that the same result be returned for the same input, or not, but my general inclination thinking about the pros (eg: we can cache) and cons (eg: they can't change something without significant work) is to say that we should *not* insist on that, and simply inform them that the lifecycle of that information is not tied to the number of executions of that command.  (eg: don't assume that running twice for \"node12\" means that node12 was reinstalled in the middle there or anything.)\n\nWe should probably use a name like \"query\" rather than \"generator\" to emphasise that these are the simplest *query* interface that can possibly work, for the sake of Razor.  All the rest of the management of such a system should be out of band.   For example, we probably want to ship an \"ip address pool\" query thing that can assign IP addresses without duplication.  We should do that, but also ship a management CLI tool next to it that handles, eg, unbinding the addresses, listing them, etc.  That should not be \"part of\" razor, but rather, a separate tool.\n\nWe should definitely make this capability available in broker and task configuration.\n\nWe may, or may not, want users to pass additional arguments to the script, but it seems like, eg, multiple distinct IP pools would definitely be a quickly requested feature, so doing that makes sense.  Having a single script, and an argument to set which pool, feels like a reasonable feature.\n\nMy initial thought on syntax was this:\n{code}\n{\"hostname\": \"node${id}.example.com\", \"ipaddress\": \"${ipaddress extra arguments}\"}\n{code}\n", "created": "2014-06-18T14:43:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "There's two things that are unclear to me: (1) how state would be handled (e.g., who owns what IP address) and (2) what the transactional guarantees are that generators make.\n\nFrom a user's POV, for IP address assignment, you'd definitely want a lease model where '(ipaddress pool3 node12)' will reserve an address for node12 from pool3", "created": "2014-06-18T15:47:00.000000"}, {"author": "557058:36233d23-b5d0-4566-822b-df0fbeabd6da", "body": "Node numbering sequence.\n\nWhile building nodes in parallel can we keep node numbering sequence different for each policy. This was possible in the older version of Razor where each model maintained it's own node number sequence.\n\nCurrently if we have two policies working together.\n\nPolicy 1 :  app-node1\n                app-node2\n                app-node3\n\nPolicy 2 :  web-node4\n                web-node5\n                web-node6\n\nI can use the before and after conditions in my policies to get all the app nodes built before the web. But is there a way to build them in parallel keeping the sequential numbering separate for both hostnames assigned.\n\nPolicy 1 : app-node1\n               app-node2\n               app-node3\n\nPolicy 2 : web-node1\n               web-node2\n               web-node3 \n\n//Shobin Sathyan", "created": "2014-06-20T02:08:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Would this be better expressed as 'hooks' (analogous to git hooks) where the hooks are registered as database items, or on disk with a yaml metadata file or something that includes events where the hook should be called.  Events would be things like, node-register/create, node-policy-bind, node-unbind, node-delete, node-reinstall etc.  The metadata may also define what args should be passed to the hook (e.g facts perhaps).\n\nThe script defined by the hook could optionally return some sort of serialised hash that would then be added to the nodes metadata which could then be used in the task templates.  It may return nothing other than a successful exit code in the case of a hook who's purpose was to create a static lease in a dhcp server possibly having been passed the mac address as an arg.\n\nHopefully this would create an infinitely flexible way to integrate with whatever external tools are in use.\n\nThanks,\nChris", "created": "2014-06-24T16:46:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I like the idea of calling this 'hooks' and the concept in general", "created": "2014-06-25T06:18:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Here's my high-level plan of attack for this, andI'll break that down into appropriate tickets in a moment:\n\n# Create a toplevel 'events' collection that tracks each event as it's being fired. We need something like that so that users have a point where they can see which hooks were fired, which ones failed and how etc. The 'events' collection will replace the 'node log' in that each node's log is just a view into the larger events collection\n# Build the plumbing to create hooks (DB schema etc.) and the necessary plumbing to run hook scripts _synchronously_\n# When an event is fired, find all the hooks responding to it and track their success/failure in the event\n# Modify the machinery for running hook scripts to run them _asynchronously_ in the background\n# Add running hooks to specific points in a node's lifecycle", "created": "2014-08-21T15:40:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "All subtasks have been completed.", "created": "2014-11-18T14:05:00.000000"}], "components": ["Server"], "created": "2014-06-18T14:37:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ee01f0e"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypj6f:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "0.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": "1_*:*_3_*:*_12608675382_*|*_10007_*:*_1_*:*_612154125_*|*_5_*:*_1_*:*_4242086456_*|*_6_*:*_1_*:*_0"}], "description": "Users may need to extend the built-in, packaged capabilities for e.g. OS templates. One way this could be accomplished would be allowing users to write \".generator\" files that would be executed when a piece of data is needed. When executed, an argument (or arguments) will be passed to the script.\n\nOne use case for this is wanting the IP address of a node to come from an external source. The user could write a `ipaddress.generator` file, which would be executed as `ipaddress.generator --node $node_name`. This script could query any external system, then return the value of the IP address.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11346", "fixedVersions": ["RAZOR 0.16.0"], "id": "11346", "issueType": "Story", "key": "RAZOR-307", "labels": [], "originalEstimate": "PT0S", "parent": "11540", "parentSummary": "IPAM support", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-11-18T14:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add user-supplied hook scripts triggered by server-side events", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Work for this will be tracked via RAZOR-792. Updating is out of scope for now, as adding and deleting should be sufficient from a functional standpoint.", "created": "2016-03-02T01:22:00.000000"}], "components": [], "created": "2014-06-18T09:49:00.000000", "creator": "623e7b53d32a94006a65d788", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@56314f1"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyup6n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_53800412581_*|*_6_*:*_1_*:*_0"}], "description": "There does not seem to be a supported way to modify tasks after they are created.", "environment": "razor-server 0.15", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11732", "fixedVersions": [], "id": "11732", "issueType": "Improvement", "key": "RAZOR-306", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623e7b53d32a94006a65d788", "resolution": "Duplicate", "resolutionDate": "2016-03-02T01:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ability to delete/update tasks once created", "timeSpent": "PT0S", "updated": "2016-03-02T01:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Work for this will be tracked in RAZOR-778.", "created": "2016-03-02T01:21:00.000000"}], "components": [], "created": "2014-06-18T09:35:00.000000", "creator": "623e7b53d32a94006a65d788", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5c49553a"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyup5z:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_53801146818_*|*_6_*:*_1_*:*_0"}], "description": "# razor create-task --json task.json\nError from doing POST http://localhost:8080/api/commands/create-task\n422 Unprocessable Entity\n{\"error\":\"extra attribute description was present in the command, but is not allowed\"}\n\n# cat task.json \n{\n  \"name\":           \"winpe-x86_64\",\n  \"description\":   \"testing a description string\",\n  \"os\":             \"winpe-x86_64\",\n  \"boot_seq\": {\n    \"1\":          \"boot_winpe\",\n    \"default\":    \"boot_local\"\n  },\n  \"templates\": {\n    \"boot_winpe\":  \"boot_winpe.erb\"\n  }\n}\n\n# description is set to nil below (it'd be nice to have that set)\n\n# razor tasks winpe-x86_64\nFrom http://localhost:8080/api/collections/tasks/winpe-x86_64:\n\n         name: winpe-x86_64\n  description: nil\n           os: \n                 name: winpe-x86_64\n     boot_seq: \n                 default: boot_local\n                       1: boot_winpe", "environment": "razor-server 0.15, razor-client 0.15", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11196", "fixedVersions": [], "id": "11196", "issueType": "Bug", "key": "RAZOR-305", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623e7b53d32a94006a65d788", "resolution": "Duplicate", "resolutionDate": "2016-03-02T01:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Setting a description field in JSON to create-task fails", "timeSpent": "PT0S", "updated": "2016-03-02T01:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "557058:36233d23-b5d0-4566-822b-df0fbeabd6da", "created": "2014-06-18T03:41:00.000000", "name": "ngrep-razor.txt", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10271"}], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "I believe this has been resolved.", "created": "2015-05-13T10:34:00.000000"}], "components": ["Server"], "created": "2014-06-18T03:41:00.000000", "creator": "557058:36233d23-b5d0-4566-822b-df0fbeabd6da", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@57e0303a"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuoyv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_28450390842_*|*_6_*:*_1_*:*_0"}], "description": "New tasks created does not provide proper  <%= file_url(\"post_install\") %> URL into the kickstart. It's missing the port 8080 in the URL and broker handover fails.\n\nAttached in an ngrep output showing the HTTP headers of the request from the node and the response from the kickstart provided.\n\nThis is failing on a Redhat 5.9 task created. The redhat tasks works well for version 6.x deployments.\n\nThanks,\nShobin Sathyan", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11195", "fixedVersions": [], "id": "11195", "issueType": "Bug", "key": "RAZOR-304", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:36233d23-b5d0-4566-822b-df0fbeabd6da", "resolution": "Done", "resolutionDate": "2015-05-13T10:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "New Tasks providing wrong post_install URL", "timeSpent": "PT0S", "updated": "2015-05-13T10:34:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Potential framework shift tracked by PR https://github.com/puppetlabs/razor-client/pull/43.", "created": "2014-06-30T18:35:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in 371dadb.", "created": "2014-07-01T11:08:00.000000"}], "components": ["Client"], "created": "2014-06-17T11:10:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6edc9de"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypzcn:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_84539600_*|*_1_*:*_1_*:*_1149300719_*|*_10007_*:*_1_*:*_59570603_*|*_3_*:*_1_*:*_597468_*|*_5_*:*_1_*:*_16267743624_*|*_6_*:*_1_*:*_0"}], "description": "If a table contains unicode, terminal-table is not calculating the proper width for the row. This may not be fixable without upstream modification.\n\n{noformat}\n+----------+------------------------------+---------------+-------------+\n| policies | name                         | configuration | broker-type |\n+----------+------------------------------+---------------+-------------+\n| 0        | \u14f1\u14f4\u14d0 \u140a\u14a1\u14d7\u1483\u1472\u1585 | (none)        | puppet-pe   |\n+----------+------------------------------+---------------+-------------+\n{noformat}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11345", "fixedVersions": ["RAZOR 0.16.0"], "id": "11345", "issueType": "Bug", "key": "RAZOR-302", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-07-02T10:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Unicode in terminal-table causes skewing", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-client/pull/41.\nFixed in commit 9f4056b.", "created": "2014-06-13T21:06:00.000000"}], "components": ["Client"], "created": "2014-06-13T18:06:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42cf5c81"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq0kf:"}, {"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_*:*_225123667_*|*_1_*:*_1_*:*_10808467_*|*_5_*:*_1_*:*_2594793_*|*_6_*:*_1_*:*_0"}], "description": "Error messages on the client are displaying like this:\n{noformat}\n$ bin/razor create-policy --name error\nError from doing POST http://localhost:8080/api/commands/create-policy\n422 Unprocessable Entity\n{\"error\":\"hostname is a required attribute, but it is not present\"}\n{noformat}\n\nIt should strip the JSON wrapping and instead look something like this:\n{noformat}\n$ bin/razor create-policy --name omg\nError from doing POST http://localhost:8080/api/commands/create-policy\n422 Unprocessable Entity\n  error: hostname is a required attribute, but it is not present\n{noformat}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11391", "fixedVersions": ["RAZOR 0.15.1"], "id": "11391", "issueType": "Bug", "key": "RAZOR-301", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T11:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Error message is wrapped in JSON", "timeSpent": "PT0S", "updated": "2014-06-16T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-06-06T17:24:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e81cb66"}, {"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|hyuk8v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_845866060_*|*_5_*:*_1_*:*_1105685_*|*_6_*:*_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%20RAZOR%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%220.15.1%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": "11522", "fixedVersions": [], "id": "11522", "issueType": "Sub-task", "key": "RAZOR-299", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T12:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Announcement sent out to the puppet-razor mailing list.", "created": "2014-06-16T12:14:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1417dc81"}, {"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|hyuk8n:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_845783238_*|*_5_*:*_1_*:*_1190752_*|*_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": "11390", "fixedVersions": [], "id": "11390", "issueType": "Sub-task", "key": "RAZOR-298", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T12:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "There are no docs updates for this release.", "created": "2014-06-16T11:33:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2217053c"}, {"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|hyuk8f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_842953074_*|*_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": "11343", "fixedVersions": [], "id": "11343", "issueType": "Sub-task", "key": "RAZOR-297", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T11:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2014-06-19T12:08:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "unneeeded", "created": "2014-06-16T11:35:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4d5968fb"}, {"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|hyuk87:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_843077337_*|*_5_*:*_1_*:*_3945839_*|*_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": "11194", "fixedVersions": [], "id": "11194", "issueType": "Sub-task", "key": "RAZOR-296", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2014-06-16T11:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update the downloads page", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@604ef547"}, {"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|hyuk7z:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_842981766_*|*_5_*:*_1_*:*_3992329_*|*_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": "11111", "fixedVersions": [], "id": "11111", "issueType": "Sub-task", "key": "RAZOR-295", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T11:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@697ea5e8"}, {"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|hyuk7r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_842975912_*|*_5_*:*_1_*:*_4005445_*|*_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": "10942", "fixedVersions": [], "id": "10942", "issueType": "Sub-task", "key": "RAZOR-294", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T11:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Confirmed \"go\".", "created": "2014-06-13T15:40:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@46ecfe46"}, {"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|hyuk7j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_598577469_*|*_5_*:*_1_*:*_248406072_*|*_6_*:*_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": "11862", "fixedVersions": [], "id": "11862", "issueType": "Sub-task", "key": "RAZOR-293", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-13T15:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Running several commands locally yields the new expected behavior.", "created": "2014-06-13T15:37:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@34b39284"}, {"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|hyuk7b:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_598392616_*|*_5_*:*_1_*:*_248595872_*|*_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).\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  * If your smoke testing includes MSIs, you will generally test on other platforms first and when that is looking good, ping the Release Engineer that built the other packages to move forward with MSIs (they require tags to be pushed). This ticket doesn't close until all chosen platforms (including MSIs) have been tested.\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  * 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": "11902", "fixedVersions": [], "id": "11902", "issueType": "Sub-task", "key": "RAZOR-292", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-13T15:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "gem has been created, and is available at http://builds.puppetlabs.lan/razor-client/0.15.1/artifacts/\n\ntag 0.15.1 is staged on my laptop, and will be pushed out when we are about to ship", "created": "2014-06-13T15:28:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@352a19a3"}, {"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|hyuk73:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_597908294_*|*_5_*:*_1_*:*_249086438_*|*_6_*:*_1_*:*_0"}], "description": "Tag and create packages\n\n  * Developer provides the SHA - [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] - 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": "11731", "fixedVersions": [], "id": "11731", "issueType": "Sub-task", "key": "RAZOR-291", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-13T15:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Not necessary for a client-exclusive release.", "created": "2014-06-16T12:22:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@35affea0"}, {"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|hyuk6v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_845927903_*|*_5_*:*_1_*:*_1106826_*|*_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": "11700", "fixedVersions": [], "id": "11700", "issueType": "Sub-task", "key": "RAZOR-290", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2014-06-16T12:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2014-06-19T12:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "attachments": [], "comments": [{"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "- version 0.15.1 has been released and its release date has been updated", "created": "2014-06-16T12:43:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c30aa1b"}, {"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|hyuk6n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "16/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_847213104_*|*_5_*:*_1_*:*_60659218205_*|*_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": "11521", "fixedVersions": [], "id": "11521", "issueType": "Sub-task", "key": "RAZOR-289", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the Jira tidy-up done for this release and prepared for the next one?", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Issue N/A.", "created": "2014-06-09T12:58:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@147e3a55"}, {"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|hyuk6f:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_243272513_*|*_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-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": "11389", "fixedVersions": [], "id": "11389", "issueType": "Sub-task", "key": "RAZOR-288", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-09T12:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Merge master into stable", "timeSpent": "PT0S", "updated": "2014-06-09T12:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Version number updated to 0.15.1 in razor-client commit 919e20c. This is sufficient since this release only affects razor-client.", "created": "2014-06-09T12:46:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4da257e1"}, {"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|hyuk67:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_242622456_*|*_5_*:*_1_*:*_604375875_*|*_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": "11342", "fixedVersions": [], "id": "11342", "issueType": "Sub-task", "key": "RAZOR-287", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-09T12:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number in source", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ad16531"}, {"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|hyuk5z:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_239487129_*|*_5_*:*_1_*:*_607514231_*|*_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": "11193", "fixedVersions": [], "id": "11193", "issueType": "Sub-task", "key": "RAZOR-286", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-09T11:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a commit for every JIRA ticket targeted at the release?", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@12875c35"}, {"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|hyuk5r:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_239470209_*|*_5_*:*_1_*:*_607526269_*|*_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": "11110", "fixedVersions": [], "id": "11110", "issueType": "Sub-task", "key": "RAZOR-285", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-09T11:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a JIRA ticket targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5ec54c6d"}, {"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|hyuk5j:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_239245218_*|*_5_*:*_1_*:*_607753150_*|*_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%20RAZOR%20AND%20resolution%20%3D%20Unresolved%20AND%20fixVersion%20%3D%20%220.15.1%22\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10941", "fixedVersions": [], "id": "10941", "issueType": "Sub-task", "key": "RAZOR-284", "labels": [], "originalEstimate": "PT0S", "parent": "11861", "parentSummary": "Razor 0.15.1 2014-06-16 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-09T11:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is the code ready for release?", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0cbf1c7f6a007049e5b9", "attachments": [], "comments": [{"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "Verified RAZOR-271, RAZOR-273.\nRAZOR-278 affects RAZOR-SERVER older than 0.15.0 so it should not block this razor-client release.\n\nQA signed off.", "created": "2014-06-12T20:30:00.000000"}], "components": [], "created": "2014-06-06T17:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@319a6ebe"}, {"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|hyuk5b:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_847448606_*|*_5_*:*_1_*:*_82735656_*|*_6_*:*_1_*:*_0"}], "description": "NOTE: This release is only for *razor-client*, not the server.\n\nRazor 0.15.1 2014-06-16 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": "11861", "fixedVersions": [], "id": "11861", "issueType": "Task", "key": "RAZOR-283", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T12:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor 0.15.1 2014-06-16 Release", "timeSpent": "PT0S", "updated": "2014-06-17T11:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "After investigation, the `puppet module` tool is claiming the CHANGELOG file is modified. No clear reason for that yet.", "created": "2014-06-30T18:36:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This seems to be a discrepancy between the md5 from the CHANGELOG file in the metadata.json generated from the Modulefile, and the md5 from the packaged CHANGELOG file.", "created": "2014-07-01T14:35:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This module uses a deprecated Modulefile, which appears to be the culprit. Two possibilities then:\n# Use a rake task to generate the CHANGELOG\n#- CHANGELOG would still be structured around commits.\n# Use a manual process to write the CHANGELOG\n#- This will take more time around module releases.", "created": "2014-07-02T17:20:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in puppetlabs-razor commit 874b59d and puppetlabs-pe_razor commit 1d5f677.", "created": "2014-07-03T14:54:00.000000"}], "components": ["Puppet Module"], "created": "2014-06-05T16:29: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@58aef174"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypx3b:"}, {"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/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1107288684_*|*_1_*:*_1_*:*_2335715010_*|*_5_*:*_1_*:*_58075283753_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_69169780_*|*_10006_*:*_1_*:*_8602334"}], "description": "{code}\n[root@classroom ~/control:master]# puppet module install puppetlabs/razor\nNotice: Preparing to install into /etc/puppetlabs/puppet/environments/production/modules ...\nNotice: Created target directory /etc/puppetlabs/puppet/environments/production/modules\nNotice: Downloading from https://forgeapi.puppetlabs.com ...\nNotice: Found at least one version of puppetlabs-stdlib compatible with PE (3.2.1);\nNotice: Skipping versions which don't express PE compatibility. To install\nthe most recent version of the module regardless of compatibility\nwith PE, use the '--ignore-requirements' flag.\nNotice: Found at least one version of puppetlabs-apt compatible with PE (3.2.1);\nNotice: Skipping versions which don't express PE compatibility. To install\nthe most recent version of the module regardless of compatibility\nwith PE, use the '--ignore-requirements' flag.\nNotice: Found at least one version of puppetlabs-vcsrepo compatible with PE (3.2.1);\nNotice: Skipping versions which don't express PE compatibility. To install\nthe most recent version of the module regardless of compatibility\nwith PE, use the '--ignore-requirements' flag.\nNotice: Installing -- do not interrupt ...\n/etc/puppetlabs/puppet/environments/production/modules\n\u2514\u2500\u252c puppetlabs-razor (v0.11.0)\n  \u251c\u2500\u252c puppetlabs-java (v1.1.1)\n  \u2502 \u2514\u2500\u2500 puppetlabs-stdlib (v3.2.0) [/opt/puppet/share/puppet/modules]\n  \u2514\u2500\u252c puppetlabs-tftp (v0.2.1)\n    \u2514\u2500\u2500 puppetlabs-xinetd (v1.2.0)\n[root@classroom ~/control:master]# puppet module upgrade puppetlabs/razor\nNotice: Preparing to upgrade 'puppetlabs-razor' ...\nNotice: Found 'puppetlabs-razor' (v0.11.0) in /etc/puppetlabs/puppet/environments/production/modules ...\nError: Could not upgrade module 'puppetlabs-razor' (v0.11.0 -> latest)\n  Installed module has had changes made locally\n    Use `puppet module upgrade --force` to upgrade this module anyway\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11177", "fixedVersions": [], "id": "11177", "issueType": "Bug", "key": "RAZOR-282", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:ddaa4b87-3b61-49bb-98f9-56fd02cdbb6b", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Module tool claims local modifications", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-client/pull/40\nFixed in commit d31ec6b.", "created": "2014-06-05T16:02:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]: I am trying to verify this but cannot find older version of razor-server here: https://downloads.puppetlabs.com/razor-server/\nCould you point me to where I can download get an old razor-server? Thanks", "created": "2014-06-12T20:14:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0]: https://github.com/puppetlabs/razor-server/releases lists all past releases.", "created": "2014-06-13T15:48:00.000000"}], "components": ["Client"], "created": "2014-06-05T14:59:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@31557a2d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq0k7:"}, {"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/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_934540340_*|*_1_*:*_1_*:*_3756089_*|*_5_*:*_1_*:*_2598010_*|*_6_*:*_1_*:*_0"}], "description": "razor-client 0.15.0 issues a GET against the /api/commands/$command_name endpoint to get the expected format for each parameter. This works fine for matching razor-server 0.15.0, but will fail with a 404 in older versions of razor-server. This should instead state the desired error message of: \"Server must supply the expected datatypes for command arguments\"", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11340", "fixedVersions": ["RAZOR 0.15.1"], "id": "11340", "issueType": "Bug", "key": "RAZOR-278", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T11:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-client 0.15.0 should yield a friendly message when using older versions of razor-server", "timeSpent": "PT0S", "updated": "2018-04-03T12:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91]: Are we going to show the IPMI password? If so, which security measures (if any) should we put in place for that?\n\nI'm thinking we should include this information in the `razor nodes $node` query, but security could complicate that.", "created": "2014-06-26T18:58:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/232. This PR does not include IPMI password, just hostname and username.", "created": "2014-06-26T19:26:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "As for showing the password: I agree that we should leave that out for now. If users suspect that that's not set right, they'll have to set a new one with set-node-ipmi-credentials.\n\nIt's not ideal (as is the fact that username is the real secret) but I fear doing anything more can get complicated pretty quickly (e.g., requiring special view permissions to see the password or encrypting it in some way)\n", "created": "2014-06-27T08:43:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 011f11f.", "created": "2014-06-27T15:30:00.000000"}], "components": ["Server"], "created": "2014-06-04T16:59:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4168e957"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypzc7:"}, {"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/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_414431973_*|*_1_*:*_1_*:*_1908345456_*|*_10007_*:*_1_*:*_72280808_*|*_3_*:*_1_*:*_1215882_*|*_5_*:*_1_*:*_16267744063_*|*_6_*:*_1_*:*_0"}], "description": "There is no way to query the IPMI credentials of a node.  We should show at least the hostname and username (which is typically not secret), but it would be beneficial to also add the password (which obviously is), and consider that in some cases username-alone represents the \"security\" payload of a request.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11338", "fixedVersions": ["RAZOR 0.16.0"], "id": "11338", "issueType": "Bug", "key": "RAZOR-277", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-07-02T10:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "IPMI details (hostname, user/password) cannot be queried", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The simplest way to avoid edge cases is to add the `c` alias for `configuration`. I've updated the title accordingly.", "created": "2014-06-27T17:31:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/234.", "created": "2014-06-27T18:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 4298aca.", "created": "2014-06-30T12:47:00.000000"}], "components": ["Client"], "created": "2014-06-03T16:18:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@10c1bc60"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypzbz:"}, {"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_*:*_164984937_*|*_1_*:*_1_*:*_2072322797_*|*_10007_*:*_1_*:*_237958398_*|*_3_*:*_1_*:*_9845994_*|*_5_*:*_1_*:*_16267745729_*|*_6_*:*_1_*:*_0"}], "description": "Currently, each key in a CLI-constructed JSON object needs to repeat the argument each time, which is redundant. This can be simplified using commas between key/value pairs.\n\nOld style:\n{code}\ncreate-broker --name broker1 --configuration server=puppet.example.org --configuration environment=production\n{code}\nNew style:\n{code}\ncreate-broker --name broker1 --configuration server=puppet.example.org,environment=production\n{code}\nNote: Commas would have special meaning when entered on CLI. This is a downside.\n\nAlternatively, the `--configuration` in that example could be reduced to `-c` or `\\--c`:\n{code}\ncreate-broker --name broker1 -c server=puppet.example.org -c environment=production\n{code}\nThis would reduce the need to take special consideration for commas in key or value.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11109", "fixedVersions": ["RAZOR 0.16.0"], "id": "11109", "issueType": "Improvement", "key": "RAZOR-276", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-07-02T10:37:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow shortcut for `create-broker`'s `configuration`", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-client/pull/39.\nFixed by client commit ad3dc14.", "created": "2014-06-03T17:32:00.000000"}], "components": ["Client"], "created": "2014-06-03T15:54:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@753c68cf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq0jz:"}, {"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_*:*_1101928320_*|*_1_*:*_1_*:*_5888444_*|*_5_*:*_1_*:*_2602767_*|*_6_*:*_1_*:*_0"}], "description": "The client can now construct the JSON object sent to the server via CLI using the `--argument key=value` syntax. This currently does not allow numbers in the key \u2014 an unnecessary restriction which should be lifted.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11699", "fixedVersions": ["RAZOR 0.15.1"], "id": "11699", "issueType": "Improvement", "key": "RAZOR-275", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T11:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow numbers in key of `key=value` syntax", "timeSpent": "PT0S", "updated": "2014-06-16T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/226", "created": "2014-06-20T14:30:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Some detail on why this was happening:\nSince the unique constraint uses a function, Sequel delegates its evaluation to the DBMS (PSQL). Since the `tags` table didn't use a function, Sequel was throwing a \"ValidationFailure\" exception before inserting the row into the database. This has been fixed by catching that specific ValidationFailure in addition to the UniqueConstraintViolation, then treating either case as a duplicate.", "created": "2014-06-20T14:33:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit aa72cf5.", "created": "2014-06-24T18:59:00.000000"}], "components": ["Server"], "created": "2014-05-30T15:25:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@50002f00"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypzbr:"}, {"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_*:*_660975452_*|*_1_*:*_1_*:*_1803859954_*|*_10007_*:*_1_*:*_361737860_*|*_3_*:*_1_*:*_7210752_*|*_5_*:*_1_*:*_16267847831_*|*_6_*:*_1_*:*_0"}], "description": "Issuing duplicate `create-tag` commands results in `Sequel::ValidationFailed - name is already taken` instead of the expected `Sequel::UniqueConstraintViolation`, meaning a second duplicate `create-tag` call doesn't succeed for idempotency.\n\nAs a hint, it looks like the `\\d` for various tables differs:\ntags: \"tags_name_key\" UNIQUE CONSTRAINT, btree (name)\nrepos: \"repos_name_index\" UNIQUE, btree (lower(name::text))\npolicies: \"policies_name_index\" UNIQUE, btree (lower(name))", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11518", "fixedVersions": ["RAZOR 0.16.0"], "id": "11518", "issueType": "Bug", "key": "RAZOR-274", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-07-02T10:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "`create-tag` command should be idempotent", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked via https://github.com/puppetlabs/razor-client/pull/38.\nFixed in client commit 3b5325c.", "created": "2014-06-02T12:48:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "The bug has been fixed:\nManually verified with the latest razor-client from github:\n{code}\nPhongs-MacBook-Pro:bin phongly$ ./razor -u http://ca1b94es1k4kqmu:8080/api create-tag --name new-tag-name --rule '[\"and\", true, false]'\nFrom http://ca1b94es1k4kqmu:8080/api:\n\n      name: new-tag-name\n      rule: [\"and\", true, false]\n     nodes: 0\n  policies: 0\n   command: http://ca1b94es1k4kqmu:8080/api/collections/commands/3\n\nPhongs-MacBook-Pro:bin phongly$\n{code}\n\nThere is not extra \"additional details..\" line as expected", "created": "2014-06-12T19:07:00.000000"}], "components": ["Client"], "created": "2014-05-30T14:50:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d9141bf"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq0jr:"}, {"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/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1205361491_*|*_1_*:*_1_*:*_251901381_*|*_5_*:*_1_*:*_2605918_*|*_6_*:*_1_*:*_0"}], "description": "When issuing create statements, the new entity is returned from the server and then displayed to the client. This is currently not distinguished from a collection query, and results like the following ensue:\n\n{noformat}\n$ razor create-tag --name and --rule '[\"and\", true, false]'\nFrom http://localhost:8080/api:\n\n      name: and\n      rule: [\"and\", true, false]\n     nodes: 0\n  policies: 0\n   command: http://localhost:8080/api/collections/commands/1\n\nQuery additional details via: `razor create-tag --name and --rule [\"and\", true, false] [nodes, policies, rule]`\n{noformat}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11516", "fixedVersions": ["RAZOR 0.15.1"], "id": "11516", "issueType": "Bug", "key": "RAZOR-273", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T11:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Extra 'additional details' for create statements", "timeSpent": "PT0S", "updated": "2014-06-16T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "70121:5f37c8a6-832b-47bd-9de8-76d17da070fa", "body": "Well, you're missing out the fact that you can use --json <file> from the CLI, not just the API (which is what the CLI program uses, anyway).\nThe main advantage here is that it's easier to edit (and revision control) that JSON file", "created": "2014-08-08T09:41:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Maybe that's a fair assessment for `create-policy` since it has so many arguments. Note though, that a script could be placed in revision control just as easily. For the other commands, I think CLI examples will be more helpful than pure API examples, since that style aligns better with the user experience of entering commands that way.", "created": "2014-08-11T12:32:00.000000"}, {"author": "70121:5f37c8a6-832b-47bd-9de8-76d17da070fa", "body": "The CLI program is nothing but a wrapper around the API", "created": "2014-08-11T15:03:00.000000"}, {"author": "70121:5f37c8a6-832b-47bd-9de8-76d17da070fa", "body": "How about a UI element that provides 2 tabs, one that provides the JSON version and one that provides the CLI version?\nI still think the documentation should provide an explanation similar to the one in my previous comment.\nA penny for your thoughts?", "created": "2014-08-11T16:22:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "We've lately been putting effort into trying to remove the need for the user to know any JSON in order to use the product. There are only two commands remaining (`create-policy` for the sheer number of arguments and `create-tag` for the syntax of the tag's rule) where knowledge of JSON still benefits the user.\n\nWith this context in mind, I think the goal of this ticket is to make the product more user-friendly in the common case, which is where the user is entering commands on the CLI alone. Indeed, I do see value in allowing the user to see both the CLI and API examples in the client, but think the CLI examples should be the default.\n\nOne solution that I think would work is to use a CLI flag that means 'show API help too'. The already-existing `--full` flag could be used to show both API and CLI examples together. That way, advanced users who want to use JSON (or write a client for the API) can do so.\n\n`razor --full help create-policy` would yield:\n{noformat}\n# SYNOPSIS\nCreate a new policy\n\n# DESCRIPTION\n...\n\n# EXAMPLES\n\n# Command Line Interface (CLI)\n  A sample policy installing CentOS 6.4:\n\n  razor create-policy --name centos-for-small \\\n      --repo centos-6.4 --task centos --broker noop \\\n      --enabled true --hostname \"host${id}.example.com\" \\\n      --root-password secret --max-count 20 \\\n      --before \"other policy\" --tag small --node-metadata key=value\n\n# Application Programming Interface (API)\n\n  A sample policy installing CentOS 6.4:\n  \n  {\n    \"name\":          \"centos-for-small\",\n    \"repo\":          \"centos-6.4\",\n    \"task\":          \"centos\",\n    \"broker\":        \"noop\",\n    \"enabled\":       true,\n    \"hostname\":      \"host${id}.example.com\",\n    \"root-password\": \"secret\",\n    \"max-count\":     20,\n    \"before\":        \"other policy\",\n    \"tags\":          [\"small\"],\n    \"node-metadata\": {\"key\": \"value\"}\n  }\n{noformat}\n\nI agree about the CLI being a wrapper for the API, but there are some instances where CLI input is special:\n- If you mention a flag twice, it will be aggregated into an array. (E.g. `--tag tag1 --tag tag2` translates to `tags = [\"tag1\", \"tag2\"]`\n- If you use the form \"a=b\" for e.g. a broker's configuration, the CLI will turn that into a JSON object.\n- Datatypes are inferred in the CLI: strings, numbers, arrays, and booleans. These need to be explicit in `--json`'s file.\n\nProviding CLI examples that utilize these shortcuts (or really anything that makes the command line different from or easier than the API) seems like an important step for documentation.\n\nThis explanation grew rather verbose, but I hope this explains the rationale behind the ticket. Does the proposed solution of `--full` solve the use case?", "created": "2014-08-11T16:56:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I think this would be a great solution to the problem", "created": "2014-08-11T17:02:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The reason `--full` seems fitting is that it currently has no effect for anything except collection queries. To me, it's like you're viewing the full help, rather than the expedited/CLI help.", "created": "2014-08-11T17:32:00.000000"}, {"author": "70121:5f37c8a6-832b-47bd-9de8-76d17da070fa", "body": "Thanks for taking the time to further explain your point", "created": "2014-08-11T17:33:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/246 and https://github.com/puppetlabs/razor-client/pull/48.\n\nFixed in razor-server commit 0e25bfc and razor-client commit ba3a9e1.", "created": "2014-08-26T17:34:00.000000"}], "components": ["Client", "DOCS", "Server"], "created": "2014-05-28T16:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a6da76b"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypsc7:"}, {"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": "08/Aug/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_273910_*|*_1_*:*_1_*:*_7086735174_*|*_10007_*:*_1_*:*_17634455_*|*_3_*:*_1_*:*_674958696_*|*_5_*:*_1_*:*_11490669481_*|*_6_*:*_1_*:*_0"}], "description": "Command help currently displays examples that are useful to someone writing direct JSON calls to the Razor API:\n\n{noformat}\nA sample policy installing CentOS 6.4:\n\n    {\n      \"name\":          \"centos-for-small\",\n      \"repo\":          \"centos-6.4\",\n      \"task\":          \"centos\",\n      \"broker\":        \"noop\",\n      \"enabled\":       true,\n      \"hostname\":      \"host${id}.example.com\",\n      \"root-password\": \"secret\",\n      \"max-count\":     20,\n      \"before\":        \"other policy\",\n      \"tags\":          [\"small\"],\n      \"node-metadata\": {\"key\": \"value\"}\n    }\n{noformat}\n\nThis would be more helpful to CLI users if it would provide the same (or different/more helpful) examples in actual CLI commands, like:\n\n{noformat}\n    razor create-policy --name centos-for-small \\\n      --repo centos-6.4 --task centos --broker noop \\\n      --enabled true --hostname \"host${id}.example.com\" \\\n      --root-password secret --max-count 20 \\\n      --before \"other policy\" --tag small --node-metadata key=value\n{noformat}\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11176", "fixedVersions": ["RAZOR 0.16.0"], "id": "11176", "issueType": "Improvement", "key": "RAZOR-272", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-08-26T17:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Include CLI examples alongside API examples for client", "timeSpent": "PT0S", "updated": "2015-01-09T12:38:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked in PR https://github.com/puppetlabs/razor-client/pull/37.\nFixed in commit 7a9c6c7.", "created": "2014-05-28T13:45:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Corrected output is now:\n{noformat}\n+---------------------------+-------+-------------+----------+-------------+----------+---------+--------+\n| timestamp                 | event | task        | template | repo        | severity | policy  | action |\n+---------------------------+-------+-------------+----------+-------------+----------+---------+--------+\n| 2014-04-30T11:16:51-05:00 | boot  | microkernel | boot     | microkernel | info     |         |        |\n| 2014-05-19T12:30:14-05:00 | bind  |             |          |             | info     | new-tag |        |\n| 2014-05-19T12:30:14-05:00 |       |             |          |             | info     | new-tag | reboot |\n+---------------------------+-------+-------------+----------+-------------+----------+---------+--------+\n{noformat}", "created": "2014-05-28T13:50:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "In my initial mockup, I actually had a slightly different layout, as there are lots of columns that are rarely filled:\n\n{code}\nTimestamp (PDT)     | Event  | Details\n--------------------------------------------------------------------------------\n2014-02-26 15:48:39 | boot   | task: microkernel, template: boot,\n                    .        . repo: microkernel\n2014-02-26 16:07:52 | bind   | policy: centos6\n2014-02-26 16:07:52 | reboot | policy: centos6\n2014-02-26 16:07:58 | boot   | task: centos, template: boot_install,\n                    .        . repo: centos-6.4\n{code}\n\nI actually forgot to put severity in there, which should be another column.\n\nI am not sure how hard it is to achieve the above with terminal-table though", "created": "2014-05-28T14:25:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "I have a slightly different table:\n{code}\n\n+---------------------------+-------+-------------+----------+-------------+----------+\n| timestamp                 | event | task        | template | repo        | severity |\n+---------------------------+-------+-------------+----------+-------------+----------+\n| 2014-06-12T18:57:32-07:00 | boot  | microkernel | boot     | microkernel | info     |\n| 2014-06-12T18:59:16-07:00 | boot  | microkernel | boot     | microkernel | info     |\n+---------------------------+-------+-------------+----------+-------------+----------+\n{code}", "created": "2014-06-12T20:02:00.000000"}], "components": ["Client"], "created": "2014-05-28T13:30:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c96e3fd"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq0jj:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"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": "28/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1633788361_*|*_1_*:*_1_*:*_1052662_*|*_5_*:*_1_*:*_2609277_*|*_6_*:*_1_*:*_0"}], "description": "Since `razor nodes node___ log` will not always return all properties for every row, the tabular display is mucking up:\n\n{noformat}\n+---------------------------+--------+-------------+----------+-------------+----------+--------+--------+\n| timestamp                 | event  | task        | template | repo        | severity | policy | action |\n+---------------------------+--------+-------------+----------+-------------+----------+--------+--------+\n| 2014-04-30T11:16:51-05:00 | boot   | microkernel | boot     | microkernel | info     |\n| 2014-05-19T12:30:14-05:00 | bind   | new-tag     | info     |\n| 2014-05-19T12:30:14-05:00 | reboot | new-tag     | info     |\n+---------------------------+--------+-------------+----------+-------------+----------+--------+--------+\n{noformat}\n\nThis needs a fix to get all headers in the dataset before building the table.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11514", "fixedVersions": ["RAZOR 0.15.1"], "id": "11514", "issueType": "Bug", "key": "RAZOR-271", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-06-16T11:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client output for `razor nodes node___ log` looks wrong", "timeSpent": "PT0S", "updated": "2014-06-16T12:21:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked in PR: https://github.com/puppetlabs/razor-client/pull/36", "created": "2014-05-27T02:23:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in client commit 88c7921.", "created": "2014-05-27T10:47:00.000000"}], "components": [], "created": "2014-05-22T16:14:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3ebe5f8c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1s7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "27/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_192466258_*|*_1_*:*_1_*:*_385000576_*|*_10007_*:*_1_*:*_27326411_*|*_5_*:*_1_*:*_1542333968_*|*_6_*:*_1_*:*_0"}], "description": "That commit was caused by the following two failures:\n\n{code}\n>rzr nodes node17\n/home/lutter/code/razor-client/lib/razor/cli/format.rb:116:in `sort'\n/home/lutter/code/razor-client/lib/razor/cli/format.rb:116:in `additional_details'\n/home/lutter/code/razor-client/lib/razor/cli/format.rb:31:in `format_document'\n/home/lutter/code/razor-client/bin/razor:43:in `<main>'\nError: comparison of String with nil failed\nTry 'razor --help' for more information\n{code}\n\nand\n\n{code}\n>rzr nodes node13 tags new rule\n/home/lutter/code/razor-client/lib/razor/cli/format.rb:105:in `display_fields'\n/home/lutter/code/razor-client/lib/razor/cli/format.rb:115:in `additional_detail\ns'\n/home/lutter/code/razor-client/lib/razor/cli/format.rb:31:in `format_document'\n/home/lutter/code/razor-client/bin/razor:43:in `<main>'\nError: undefined method `keys' for \"=\":String\nTry 'razor --help' for more information\n{code}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11730", "fixedVersions": ["RAZOR 0.15.0"], "id": "11730", "issueType": "Improvement", "key": "RAZOR-270", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add unit tests for commit 5c9fd914", "timeSpent": "PT0S", "updated": "2014-07-28T10:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 157df62.", "created": "2014-05-22T11:26:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "PR: https://github.com/puppetlabs/razor-client/pull/33", "created": "2014-05-22T11:53:00.000000"}], "components": ["Client"], "created": "2014-05-21T19:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7c8d2fe4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1rz:"}, {"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_*:*_620529541_*|*_1_*:*_1_*:*_3289026_*|*_10007_*:*_1_*:*_54656810_*|*_5_*:*_1_*:*_1542335829_*|*_6_*:*_1_*:*_0"}], "description": "When displaying help for a command, text like the following is wrongfully being included:\n\n{noformat}\nQuery additional details via: `razor create-policy [help, schema]`\n{noformat}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11729", "fixedVersions": ["RAZOR 0.15.0"], "id": "11729", "issueType": "Bug", "key": "RAZOR-269", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Hide `additional details` text from command help", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Addressed by https://github.com/puppetlabs/razor-server/pull/221", "created": "2014-05-22T10:17:00.000000"}], "components": ["QA", "Server"], "created": "2014-05-21T18:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1425dda6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1rr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_626200685_*|*_1_*:*_1_*:*_8311569_*|*_10007_*:*_1_*:*_48964791_*|*_5_*:*_1_*:*_1542353248_*|*_6_*:*_1_*:*_0"}], "description": "Here's the start of the stacktrace:\n\n{code}\n17:17:06,599 INFO  [razor.web.api] (http-/0.0.0.0:8080-1) NoMethodError - undefined method `[]' for nil:NilClass:\n        /home/lutter/code/razor-server/lib/razor/validation/hash_attribute.rb:71:in `to_json'\n        json/ext/GeneratorMethods.java:71:in `to_json'\n        /home/lutter/code/razor-server/lib/razor/validation/hash_schema.rb:168:in `to_json'\n        json/ext/GeneratorMethods.java:71:in `to_json'\n        /home/lutter/code/razor-server/lib/razor/command.rb:86:in `handle_http_get'\n        /home/lutter/code/razor-server/app.rb:536:in `HEAD /api/commands/:name'\n        org/jruby/RubyMethod.java:124:in `call'\n        /home/lutter/.rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:1593:in `compile!'\n        org/jruby/RubyProc.java:271:in `call'\n\n{code}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11108", "fixedVersions": ["RAZOR 0.15.0"], "id": "11108", "issueType": "Bug", "key": "RAZOR-268", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Running 'razor help set-node-hw-info' produces a 500 error", "timeSpent": "PT0S", "updated": "2014-07-28T10:57:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "One way around this is using hooks. The basic steps would be:\n\n- Create hook with a script called `node-bound-to-policy` that will run on that event.\n- Make the `node-bound-to-policy` script return the proper hostname for the node inside the `node: metadata: update: hostname` JSON output. The counter for each policy could be stored in the hook's configuration.\n- Reference this metadata value inside the task, setting the hostname.", "created": "2015-04-01T21:25:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:29:00.000000"}], "components": [], "created": "2014-05-21T17:43:00.000000", "creator": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@45b38b73"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyubjb:"}, {"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": "02/Apr/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_30818746775_*|*_6_*:*_1_*:*_0"}], "description": "In a razor policy, you\u2019ve got this stanza:\n\n{noformat}\nhostname_pattern: \u201cprefix-${id}.example.com\u201d\n{noformat}\n\nWhere {{$\\{id\\}}} is incremented for each new node.\n\nMy first problem is that that variable appears to be global across all policies, instead of local to each policy. Let\u2019s say the last node I launched was from \u201cpolicy-foo\u201d and is named \u201cfoo-14\u201d. If the next node I provision is from policy \u201cbar\u201d, then it will be named \u201cbar-15\u201d, even if there are no other nodes in that policy at all. So that needs improvement.\n\nAfter that, I would sometimes like to reset the id value back to the beginning or be able to specify my own incrementor that would start at the beginning.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11388", "fixedVersions": [], "id": "11388", "issueType": "New Feature", "key": "RAZOR-267", "labels": ["support"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:f3ef9780-cbae-4fd6-850c-f912b322bbb0", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow the ability to control the id field ", "timeSpent": "PT0S", "updated": "2015-05-13T10:29:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/229.", "created": "2014-06-25T14:44:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 610c10a.", "created": "2014-06-25T15:26:00.000000"}], "components": ["QA"], "created": "2014-05-21T16:06:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@29af54cb"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypzbj:"}, {"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/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_587314756_*|*_1_*:*_1_*:*_3018339493_*|*_10007_*:*_1_*:*_2509641_*|*_3_*:*_1_*:*_696296_*|*_5_*:*_1_*:*_16267908800_*|*_6_*:*_1_*:*_0"}], "description": "Currently, when a request to /svc/boot decides the node should boot locally, the entry written to the node's log is\n{code}\n     {  \"severity\" => \"info\",\n         \"repo\" => \"microkernel\",\n         \"event\" => \"boot\",\n         \"task\" => \"noop\",\n         \"template\" => \"boot_local\"\n    }\n{code}\n\nThere should be no 'repo' there.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11317", "fixedVersions": ["RAZOR 0.16.0"], "id": "11317", "issueType": "Improvement", "key": "RAZOR-266", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-07-02T10:34:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "When /svc/boot boots locally it should not log 'repo' => 'microkernel'", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "One such failure when 'protect_new_nodes = true':\n\n{code}\n  1) command and query API /api/collections/nodes/:name should default to installed false\n     Failure/Error: last_response.json['state'].should include 'installed' => false\n       expected {\"installed\"=>\"true\", \"installed_at\"=>\"2014-05-21T14:12:03-07:00\"} to include {\"installed\"=>false}\n       Diff:\n       @@ -1,2 +1,3 @@\n       -[{\"installed\"=>false}]\n       +\"installed\" => \"true\",\n       +\"installed_at\" => \"2014-05-21T14:12:03-07:00\"\n     # ./spec/app/api_spec.rb:750:in `(root)'\n{code}", "created": "2014-05-21T15:17:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:29:00.000000"}], "components": [], "created": "2014-05-21T15:15:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1708d9ea"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq94v:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_30827624431_*|*_6_*:*_1_*:*_0"}], "description": "If I set 'protect_new_nodes = true' in my server's config.yaml, lots of tests fail because the tests read that file, too.\n\nThe tests need to be run against their own, fixed config.yaml", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11513", "fixedVersions": [], "id": "11513", "issueType": "Improvement", "key": "RAZOR-265", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:29:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "spec tests need to use their own config.yaml", "timeSpent": "PT0S", "updated": "2015-05-13T10:29:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": ["QA", "Server"], "created": "2014-05-21T14:42:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4a91b32e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1r3:"}, {"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_*:*_680943272_*|*_1_*:*_1_*:*_8749684_*|*_3_*:*_1_*:*_6878872_*|*_5_*:*_1_*:*_1542488169_*|*_6_*:*_1_*:*_0"}], "description": "Currently, when 'protect_new_nodes' is true, new nodes that boot against the server do not go through the MK, and are therefore not fully inventoried.\n\nThe effect of 'protect_new_nodes' should solely be to treat new nodes as installed at the point where we ordinarily would assign a policy.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11860", "fixedVersions": ["RAZOR 0.15.0"], "id": "11860", "issueType": "Improvement", "key": "RAZOR-264", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "When 'protect_new_nodes' is true, nodes should still be inventoried by the MK", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": ["Server"], "created": "2014-05-21T14:39:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42762d9c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1rb:"}, {"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_*:*_680963216_*|*_1_*:*_1_*:*_2772615_*|*_3_*:*_1_*:*_13028200_*|*_5_*:*_1_*:*_1542464371_*|*_6_*:*_1_*:*_0"}], "description": "We treat the 'installed' flag for a node as protecting the node from any attempt to match it to a policy.\n\nIf the user ever manages to boot a Microkernel on a node that is marked as 'installed' but has no policy assigned to it (e.g., because the original policy was deleted, or because 'protect_new_nodes' is set to true) the checkin by the MK will cause an attempt to bind the node, with potential data loss.\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11900", "fixedVersions": ["RAZOR 0.15.0"], "id": "11900", "issueType": "Bug", "key": "RAZOR-263", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "When a node is installed but has no policy, checkin will try to bind it", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:27:00.000000"}], "components": ["Server"], "created": "2014-05-20T16:16:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7defe15a"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyuap3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_30910249530_*|*_6_*:*_1_*:*_0"}], "description": "Right now, the server logs copious amounts of stuff, mostly useful in development, but way too much for production.\n\nFor development (and production), we'd want to remove the logging done by Razor.database_is_current? as that causes 6 log entries per request\n\nFor production, we'd want to not log SQL queries by default, and probably cut down on other output, too.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11859", "fixedVersions": [], "id": "11859", "issueType": "Improvement", "key": "RAZOR-261", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Rationalize log output", "timeSpent": "PT0S", "updated": "2015-05-13T10:27:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:26:00.000000"}], "components": ["Client", "Server"], "created": "2014-05-20T13:05:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@165c8c24"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu9n3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_30921686784_*|*_6_*:*_1_*:*_0"}], "description": "To facilitate debugging, it would be great to be able to enable inbound SSH to MK nodes.  The workflow I envision from a user perspective is something like this:\n\n{code}\n] razor node node27 console\n# ... progress reports\n# ... ssh connection happens here\nroot@node27# \n{code}\n\nUnder the hood, I imagine this being a multi-stage process:\n\n1. Send a request to the server to enable SSH access on that MK image, if it is not already enabled.  This can include the SSH public key data to use for the SSH connection.\n2. Server sends a message to the MK client asking it to update SSH, and providing the public key info.\n3. Client runs a script that opens firewall ports, starts the ssh service, adds the public key to root, etc, etc, enough to make inbound ssh possible.\n4. server/client figure out this has happened\n5. client makes an ssh connection to the server, using connection data supplied by the server\n6. optionally: reboot the MK after the connection exits, to ensure a clean system without user modifications or access\n\nAn alternative would be for the public/private keys to be generated on each individual MK, and shipped from MK => server => client, but that probably more exposes us to security risk shipping around key material, etc.\n\nRight now this would have to wait for the MK client to next poll, up to 15 minutes delay.  Enhancing that to allow either server-push messaging, or instant response rather than long delay polls on the client would fix that UX issue without having to change the fundamental workflow.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11316", "fixedVersions": [], "id": "11316", "issueType": "Improvement", "key": "RAZOR-260", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Make SSH to MK possible", "timeSpent": "PT0S", "updated": "2015-05-13T10:26:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:26:00.000000"}], "components": ["Client"], "created": "2014-05-16T18:21:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c1c8c54"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu8d3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_31248303278_*|*_6_*:*_1_*:*_0"}], "description": "Each time a command is executed, three server interactions occur:\n# GET /api\n# GET /api/commands/$command_name\n# POST /api/commands/$command_name\n\nAt the least, the second GET could be persistently cached to save on performance.\n\n[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] proposes using this [caching framework|https://github.com/plataformatec/faraday-http-cache].", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11727", "fixedVersions": [], "id": "11727", "issueType": "Improvement", "key": "RAZOR-256", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Cache command argument datatypes in client", "timeSpent": "PT0S", "updated": "2015-05-13T10:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "See https://github.com/puppetlabs/razor-server/pull/211", "created": "2014-05-16T19:05:00.000000"}], "components": ["QA", "Server"], "created": "2014-05-16T17:18:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@28a2069a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytezr:"}, {"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_*:*_85674274_*|*_1_*:*_1_*:*_6387296_*|*_10007_*:*_1_*:*_314101324_*|*_5_*:*_1_*:*_2255505462_*|*_6_*:*_1_*:*_0"}], "description": "If there are nodes without facts (node.facts == nil), update-tag-rule seems to succeed but the background processing of Tag#eval_nodes fails because Tag#match? passes nil into the matcher as the facts which eventually fails by trying to call nil.[]", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11175", "fixedVersions": ["RAZOR 0.15.0"], "id": "11175", "issueType": "Bug", "key": "RAZOR-254", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-21T10:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Background processing of update-tag-rule should not fail when there are nodes without facts", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Fixed on 3.2 and 3.3 doc versions.", "created": "2014-05-22T16:18:00.000000"}], "components": ["DOCS"], "created": "2014-05-16T12:24:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6c8edf2f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1qf:"}, {"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/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_532437973_*|*_5_*:*_1_*:*_2146892766_*|*_6_*:*_1_*:*_0"}], "description": "From http://docs.puppetlabs.com/pe/3.2/razor_reference.html#create-policy\n\n{quote}\nThis is NON AUTHORITIVE in that it will not replace existing metadata\n{quote}\nShould be:\n{quote}\nThis is NON AUTHORITATIVE in that it will not replace existing metadata\n{quote}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11726", "fixedVersions": ["RAZOR 0.15.0"], "id": "11726", "issueType": "Bug", "key": "RAZOR-252", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-22T16:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Documentation: Typo in `create-policy`'s `node_metadata` parameter", "timeSpent": "PT0S", "updated": "2014-06-19T12:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The problem was caused by me using 'or' instead of '||' in an assignment, as these have different priorities (\"a = false or true\" does not do what you think it does)\n\nFurthermore, the spec tests in spec/data/tag_spec.rb had a bug themselves that masked this error.", "created": "2014-05-15T16:26:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Addressed by https://github.com/puppetlabs/razor-server/pull/210", "created": "2014-05-16T17:06:00.000000"}], "components": ["QA", "Server"], "created": "2014-05-15T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@71336b69"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytezb:"}, {"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_*:*_406927962_*|*_1_*:*_1_*:*_1144912_*|*_10007_*:*_1_*:*_87856048_*|*_5_*:*_1_*:*_2255451662_*|*_6_*:*_1_*:*_0"}], "description": "1. On a Razor server with at least one node, create a tag with\n{code}\n  razor create-tag --name test --rule '[\"=\", 1, 0]'\n{code}\nand verify with 'razor nodes' that no nodes are tagged with 'test'\n\n2. Issue an update-tag-rule command\n{code}\n  razor update-tag-rule --name test --rule '[\"=\", 1, 1]'\n{code}\n\nExpected: 'razor nodes' shows that all nodes are tagged with 'test'\nActual: 'razor nodes' shows that none of the nodes are tagged with 'test'\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11511", "fixedVersions": ["RAZOR 0.15.0"], "id": "11511", "issueType": "Bug", "key": "RAZOR-250", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-21T10:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "update-tag-rule does not adjust the list of tags for nodes", "timeSpent": "PT0S", "updated": "2014-07-28T10:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "It's a minor note, but if the user issues the command twice with different values for e.g. `--repo ___`, the error message will instead report that `repo_id` is in conflict, rather than `repo`. This could be resolved by comparing the Hash used to generate the object, but that will be considered outside the scope of this issue.", "created": "2014-05-15T11:51:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 4493cc4.", "created": "2014-05-15T12:28:00.000000"}], "components": ["QA", "Server"], "created": "2014-05-15T11:46:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@47458b55"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytezj:"}, {"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_*:*_510243278_*|*_1_*:*_1_*:*_2319384_*|*_5_*:*_1_*:*_2255432412_*|*_6_*:*_1_*:*_0"}], "description": "When issuing the same `create-policy` command twice in a row, the code currently reports that several fields \u2014 including all fields that reference other objects \u2014\u00a0do not match. This is misleading, since issuing the same command should be a success in this case, per RAZOR-185.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11386", "fixedVersions": ["RAZOR 0.15.0"], "id": "11386", "issueType": "Bug", "key": "RAZOR-248", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-21T10:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "\"Create\" commands do not return different status if class references other classes", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Retaining the ability for `create-policy` to also create tags, the help text looks like this:\n{noformat}\n * tags\n   - The array of tags that are used for matching nodes to this policy.\n   \n   When a node has all these tags matched on it, it will be a candidate\n   for binding to this policy.\n   - It must be one of array.\n   \n   - This value must be an array.\n      - \n      - This must be an array.\n      - All elements must be one of object.\n      - All elements:\n         \n         # Attributes\n         \n          * name\n            - The name of the tag.\n            - This attribute is required\n            - It must be one of string.\n         \n          * rule\n            - The `rule` is optional.  If you supply this, you are creating a new tag\n            rather than adding an existing tag to the policy.  In that case this\n            contains the tag rule.\n            \n            Creating a tag while adding it to the policy is atomic: if it fails for\n            any reason, the policy will not be modified, and the tag will not be\n            created.  You cannot end up with one change without the other.\n            - It must be one of array.\n            \n            - This value must be an array.\n{noformat}\nWithout that ability, it looks like this:\n{noformat}\n * tags\n   - The array of names of tags that are used for matching nodes to this policy.\n   \n   When a node has all these tags matched on it, it will be a candidate\n   for binding to this policy.\n   - It must be one of array.\n   \n   - This value must be an array.\n      - \n      - This must be an array.\n      - All elements must be one of string.\n      - All elements must match the name of an existing tag.\n{noformat}", "created": "2014-05-14T10:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 3185fb3.\n\nChose to go with removing the ability to create tags in `create-policy`.", "created": "2014-05-14T10:58:00.000000"}], "components": ["Client", "QA", "Server"], "created": "2014-05-13T19:23:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@605f0b49"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytez3:"}, {"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_*:*_601802072_*|*_1_*:*_1_*:*_56172599_*|*_5_*:*_1_*:*_2255419910_*|*_6_*:*_1_*:*_0"}], "description": "Since documentation is now being generated based on the internal representation of commands, let's make life easier when doing references in commands by using just the names of the reference objects.\nOld: `\\{\"name\": \"obj_name\"\\}`\nNew: `obj_name`\n\nBoth versions will still be accepted via the API.\n\nNOTE: This means removing the ability for `create-policy` to also create tags.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11107", "fixedVersions": ["RAZOR 0.15.0"], "id": "11107", "issueType": "Improvement", "key": "RAZOR-246", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-21T10:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Use string rather than object references internally", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "created": "2014-05-13T18:24:00.000000", "name": "create-policy-help-edited.txt", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10223"}, {"attacher": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "created": "2014-05-13T18:24:00.000000", "name": "create-policy-help.txt", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10213"}], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The two attached files contain the original help for create-policy (create-policy-help.txt) and an edited version that would be a little easier to understand (create-policy-help-edited.txt)\n\nOne issue that is still not addressed by the edited help text is how CLI users go from the help for 'tags' to passing '--tag tag1 --tag tag2' and how'd they know that they can't create tags from the command line.\n\nIn addition, the text uses 'reference to ...' as a shorthand for passing the name of such an object for CLI users respectively passing '{ \"name\": \"foo\" }' in the JSON for API users.\n", "created": "2014-05-13T18:28:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:25:00.000000"}], "components": ["Server"], "created": "2014-05-13T18:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7f3c8cf0"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq95z:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_31507303129_*|*_6_*:*_1_*:*_0"}], "description": "The help text that 'razor help create-policy' creates is very hard to follow. The main problem is that the help text describes the API rather than the command line usage. This makes it hard for users to understand what they should pass on the command line; in particular, the help for references to other objects is very awkward.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11856", "fixedVersions": [], "id": "11856", "issueType": "Bug", "key": "RAZOR-245", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client help text is very hard to understand", "timeSpent": "PT0S", "updated": "2015-05-13T10:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:25:00.000000"}], "components": ["Client", "Server"], "created": "2014-05-13T17:18:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@580b80f1"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq95r:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_31511177382_*|*_6_*:*_1_*:*_0"}], "description": "Running 'razor tags' and 'razor help tags' produces the exact same output. It would be nice if 'razor help tags' would produce some description of what tags are. (Same for other collections, of course)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11855", "fixedVersions": [], "id": "11855", "issueType": "Bug", "key": "RAZOR-244", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "No help for collections", "timeSpent": "PT0S", "updated": "2015-11-19T15:24:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "For generic phrasing, this will use:\n{quote}\nThere are no items for this query.\n{quote}", "created": "2014-05-20T15:27:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in client commit 535166f.", "created": "2014-05-20T15:41:00.000000"}], "components": ["Client", "QA"], "created": "2014-05-13T17:09:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5259a4aa"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1pz:"}, {"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/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_779318318_*|*_1_*:*_1_*:*_521888838_*|*_3_*:*_1_*:*_77630671_*|*_5_*:*_1_*:*_1542604740_*|*_6_*:*_1_*:*_0"}], "description": "When a tag is not used by any policy, 'razor tags NAME policies' prints an empty table. It should print some text like 'There are no policies associated with this tag' or similar.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11899", "fixedVersions": ["RAZOR 0.15.0"], "id": "11899", "issueType": "Bug", "key": "RAZOR-243", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client output when no data present", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 7336f44.", "created": "2014-05-19T17:48:00.000000"}], "components": ["Client", "QA"], "created": "2014-05-13T17:04:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@286ee1c0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1pr:"}, {"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_*:*_858082566_*|*_1_*:*_1_*:*_494281861_*|*_10007_*:*_1_*:*_9466660_*|*_3_*:*_1_*:*_17324296_*|*_5_*:*_1_*:*_1542614368_*|*_6_*:*_1_*:*_0"}], "description": "When I run 'razor nodes nodeNNN tags', I get\n\n{quote}\nError: undefined method `[]' for nil:NilClass\nTry 'razor --help' for more information\n{quote}\n\nboth for nodes with and w/o associated tags. If there are tags, the output should have the same format as 'razor tags'; if there are none associated with the node, the output should be 'no tags apply to this node'", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11698", "fixedVersions": ["RAZOR 0.15.0"], "id": "11698", "issueType": "Bug", "key": "RAZOR-242", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Running 'razor nodes nodeNNN tags' produces an error", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I would also be happy with output like the following (where [... | ... ] is used to show the possible outputs, and are not part of the output):\n\n{quote}\n      name: node13\n  dhcp_mac: 52:54:00:0f:e5:54\n     state: \n              installed: false\n      tags: compute, anything, new, any, client-l\n     facts: [none|present*]\n  hw_info: [none|present*]\n  policy: [none|$policyname]\n{quote}\n\nwhere we document somewhere that 'present*' tells the user they can navigate there - and better wording would be much appreciated.", "created": "2014-05-13T17:07:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in client commit e397ef8.\n\nFrom `razor nodes node1`:\n{quote}\nQuery additional details via: `razor nodes node1 \\[hw_info, policy, log, tags, facts, state\\]`\n{quote}\n\nFrom `razor nodes` (uses the name of the first entry in the list:\n{quote}\nQuery an entry by including its name, e.g. `razor nodes node1`\n{quote}", "created": "2014-05-20T13:46:00.000000"}], "components": ["Client", "QA"], "created": "2014-05-13T16:59:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@41028740"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1pj:"}, {"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/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_786223013_*|*_1_*:*_1_*:*_522097967_*|*_10007_*:*_1_*:*_70754727_*|*_3_*:*_1_*:*_342277_*|*_5_*:*_1_*:*_1542630689_*|*_6_*:*_1_*:*_0"}], "description": "When I run 'razor nodes nodeNNN', the output gives me no indication that I can get additional information, e.g. with 'razor nodes nodeNNN \\{log,facts,hw_info\\}'\n\nThe output should have a line at the end that says 'additional details: log, facts, hw_info, tags, policies' etc.\n\nOnly objects that are actually there for the node should be mentioned (e.g., if the node has no facts or tags, they should not be mentioned in the above)\n ", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11507", "fixedVersions": ["RAZOR 0.15.0"], "id": "11507", "issueType": "Bug", "key": "RAZOR-241", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client should indicate what additional details are available", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Part of this work should be standardizing spec tests to use `describe Razor::Command::$class`, which also removes the need to surround the `it_behaves_like \"a command\"` line with the same `describe`.", "created": "2014-05-13T12:17:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 00051fa.", "created": "2014-05-21T16:16:00.000000"}], "components": ["Server"], "created": "2014-05-13T10:34:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@c25882c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1qn:"}, {"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_*:*_2_*:*_674408613_*|*_1_*:*_1_*:*_704854422_*|*_10007_*:*_2_*:*_19995540_*|*_3_*:*_1_*:*_3332725_*|*_5_*:*_1_*:*_1542565042_*|*_6_*:*_1_*:*_0"}], "description": "Whenever an rspec test that is describing a command fails, the whole help text is dumped for each test. This should be refined to show a more readable text (perhaps just the command's name) for the `to_s`.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11106", "fixedVersions": ["RAZOR 0.15.0"], "id": "11106", "issueType": "Bug", "key": "RAZOR-240", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Command's `to_s` should not be help text", "timeSpent": "PT0S", "updated": "2014-07-28T10:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:23:00.000000"}], "components": ["Server"], "created": "2014-05-13T09:20:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3cce77f6"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu4c7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_31539826218_*|*_6_*:*_1_*:*_0"}], "description": "One very common pattern for conform! in our code is remapping field names -- we do this routinely, to support fixing bad attributes.  We should implement a common conform! and a DSL helper for this akin to:\n\n{code}\nclass Razor::Command::Blah\n  remap_fields 'hw_info' => 'hw-info', 'broker_type' => 'broker-type'\nend\n{code}\n\nThe common conform! code can then perform this remapping automatically, rather than open-coding it in half the commands.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11174", "fixedVersions": [], "id": "11174", "issueType": "Improvement", "key": "RAZOR-239", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Implement \"remap field name\" common helper for \"conform!\"", "timeSpent": "PT0S", "updated": "2015-05-13T10:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:24:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7cdf554b"}, {"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|hyu1zj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1822805163_*|*_5_*:*_1_*:*_1619768323_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11385", "fixedVersions": [], "id": "11385", "issueType": "Sub-task", "key": "RAZOR-237", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T18:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Close all resolved tickets in Jira", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:24:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@694625de"}, {"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|hyu1zb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1813781030_*|*_5_*:*_1_*:*_1628784912_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11312", "fixedVersions": [], "id": "11312", "issueType": "Sub-task", "key": "RAZOR-236", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T16:13:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send out announcements", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Unneeded", "created": "2014-05-28T16:11:00.000000"}], "components": [], "created": "2014-05-07T16:24:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7d37bcca"}, {"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|hyu1z3:"}, {"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_*:*_1813674900_*|*_5_*:*_1_*:*_1628895459_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11173", "fixedVersions": [], "id": "11173", "issueType": "Sub-task", "key": "RAZOR-235", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T16:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update the downloads page", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@58211cc"}, {"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|hyu1yv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1813313589_*|*_3_*:*_1_*:*_298998_*|*_5_*:*_1_*:*_1628971822_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11105", "fixedVersions": [], "id": "11105", "issueType": "Sub-task", "key": "RAZOR-234", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T16:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Push tag", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "razor-client gem is live on rubygems.org, and tarball/sig available at http://downloads.puppetlabs.com/razor-client/", "created": "2014-05-28T12:44:00.000000"}], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5e4f8fe6"}, {"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|hyu1yn:"}, {"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_*:*_1801236209_*|*_3_*:*_1_*:*_11300270_*|*_5_*:*_1_*:*_1630045541_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10938", "fixedVersions": [], "id": "10938", "issueType": "Sub-task", "key": "RAZOR-233", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T15:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Packages pushed", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Only three sources needed updating:\n- https://github.com/puppetlabs/razor-server/wiki/Getting-started\n- https://github.com/puppetlabs/razor-server/wiki/Writing-Tasks\n- api.md in razor-server", "created": "2014-05-28T16:54:00.000000"}], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@64fc046"}, {"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|hyu1yf:"}, {"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_*:*_1816265237_*|*_5_*:*_1_*:*_1626323824_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11854", "fixedVersions": [], "id": "11854", "issueType": "Sub-task", "key": "RAZOR-232", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T16:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Docs pushed", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "body": "Go from [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91], [~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629], and [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]", "created": "2014-05-28T12:16:00.000000"}], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@374098fd"}, {"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|hyu1y7:"}, {"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_*:*_1799578092_*|*_5_*:*_1_*:*_1643006793_*|*_6_*:*_1_*:*_0"}], "description": "Should include: dev, docs, product, qa, releng", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11898", "fixedVersions": [], "id": "11898", "issueType": "Sub-task", "key": "RAZOR-231", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T12:16:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Go/no-go meeting", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@10042ee1"}, {"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|hyu1xz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1800147311_*|*_5_*:*_1_*:*_1642446213_*|*_6_*:*_1_*:*_0"}], "description": "Procedure may vary by project and point in the release cycle. Ask around.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11723", "fixedVersions": [], "id": "11723", "issueType": "Sub-task", "key": "RAZOR-230", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T12:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Smoke test packages", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:4b02db91-705f-4691-a56a-9a839ecbce6e", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "For posterity's sake, I asked to have commit e4362439 in the razor-server repo tagged for this", "created": "2014-05-22T17:13:00.000000"}], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7375e399"}, {"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|hyu1xr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1294639092_*|*_3_*:*_1_*:*_2481746_*|*_5_*:*_1_*:*_2145476079_*|*_6_*:*_1_*:*_0"}], "description": "Developer provides the SHA. For puppet, don't forget the msi packages.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11697", "fixedVersions": [], "id": "11697", "issueType": "Sub-task", "key": "RAZOR-229", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-22T16:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tag the release and create packages", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2c757686"}, {"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|hyu1xj:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1800143135_*|*_5_*:*_1_*:*_1642452633_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11504", "fixedVersions": [], "id": "11504", "issueType": "Sub-task", "key": "RAZOR-228", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T12:26:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update version number", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1233ad9d"}, {"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|hyu1xb:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1299018292_*|*_6_*:*_1_*:*_0"}], "description": "Collaborating with product for release story", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11384", "fixedVersions": [], "id": "11384", "issueType": "Sub-task", "key": "RAZOR-227", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-22T17:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Prepare long form release notes and short form release story", "timeSpent": "PT0S", "updated": "2014-05-22T17:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5c4ed592"}, {"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|hyu1x3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1219427643_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11311", "fixedVersions": [], "id": "11311", "issueType": "Sub-task", "key": "RAZOR-226", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-21T19:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is a new version created in Jira for the next version in the series?", "timeSpent": "PT0S", "updated": "2014-05-21T19:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@26664d65"}, {"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|hyu1wv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1219255299_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11172", "fixedVersions": [], "id": "11172", "issueType": "Sub-task", "key": "RAZOR-225", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-21T19:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a commit for every bug targeted at the release?", "timeSpent": "PT0S", "updated": "2014-05-21T19:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2a236470"}, {"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|hyu1wn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1219237414_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11104", "fixedVersions": [], "id": "11104", "issueType": "Sub-task", "key": "RAZOR-224", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-21T19:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Is there a bug targeted at the release for every commit?", "timeSpent": "PT0S", "updated": "2014-05-21T19:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@332f1fb7"}, {"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|hyu1wf:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1219222352_*|*_6_*:*_1_*:*_0"}], "description": "All tests (spec, acceptance) should be passing on all platforms.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10976", "fixedVersions": [], "id": "10976", "issueType": "Sub-task", "key": "RAZOR-223", "labels": [], "originalEstimate": "PT0S", "parent": "11853", "parentSummary": "Razor 0.15.0 2014-05-28 Release", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-21T19:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Ensure tests are passing", "timeSpent": "PT0S", "updated": "2014-05-21T19:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c0cbf1c7f6a007049e5b9", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Release happened and announced publicly on 2014-05-28", "created": "2014-05-28T16:13:00.000000"}], "components": [], "created": "2014-05-07T16:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1e38dac8"}, {"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|hyu1w7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1822851042_*|*_6_*:*_1_*:*_0"}], "description": "Razor 0.15.0 2014-05-28 Release", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11853", "fixedVersions": [], "id": "11853", "issueType": "Task", "key": "RAZOR-222", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-28T18:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor 0.15.0 2014-05-28 Release", "timeSpent": "PT0S", "updated": "2014-05-28T18:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit aa041ac.", "created": "2014-05-13T15:50:00.000000"}], "components": ["Server"], "created": "2014-05-07T12:56:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@70a813b9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyteyv:"}, {"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_*:*_680838566_*|*_1_*:*_1_*:*_61558_*|*_10007_*:*_1_*:*_501051416_*|*_3_*:*_1_*:*_17669384_*|*_5_*:*_1_*:*_2255380209_*|*_6_*:*_1_*:*_0"}], "description": "Database constraints and validation constraints do not always match up. Recently, the `create-policy` command had some discrepancies between what the validation framework considered to be required attributes and what the database required.\n\nIt will be helpful to add automated spec testing for required attributes that commands can harness. This should should test, at the least:\n- That the command passes with the minimum (required) attributes provided\n- That the command fails when any single required attribute is removed", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11103", "fixedVersions": ["RAZOR 0.15.0"], "id": "11103", "issueType": "Task", "key": "RAZOR-221", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-21T10:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Verify and fix database vs. validation constraint inconsistencies", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "288000", "aggregatetimeoriginalestimate": "288000", "assignee": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "attachments": [], "comments": [{"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Per Scott:\n\nWhen a node boots, it runs the microkernel to report facts to Razor. If the user wants to use custom facts about a node in Razor, they will need to augment the microkernel so that Facter can report these special facts. In order to do that, the user places a zip file in a special location. When the microkernel boots, it downloads this extension from the server (if it exists), extracts the contents, and when Facter runs, it will execute the facts, per the specification in that dev document. This lets the user reference these facts in tags.", "created": "2016-02-03T10:19:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "We should add a concrete example of how this can work in a production environment.", "created": "2016-04-20T14:24:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Drafty draftiness here:\nhttps://github.com/puppetlabs/pe-docs-private/commit/14a69d9f19aca28a080254a52273b6e28cb4b47f\n\nWould you take a look [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4]? Apologies in advance that there are more open questions than usual -- this process is still a little murky to me. ", "created": "2016-04-27T12:32:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Commit reviewed.", "created": "2016-04-27T15:15:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] Could you take another look? \nhttps://github.com/puppetlabs/pe-docs-private/commit/340aeba2c91274f8bd25f230b797ce19edaacd2c\n\nI'll email Chris Barker and ask for a quick review and clarification re: RUBYLIB vs FACTERLIB.", "created": "2016-04-29T11:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Reviewed.", "created": "2016-05-03T10:00:00.000000"}, {"author": "557058:c9b48d3b-3b16-4fba-80cb-daf19743b953", "body": "Fixed in Couch.", "created": "2016-05-03T13:19:00.000000"}], "components": ["DOCS"], "created": "2014-05-07T12:16:00.000000", "creator": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c0ea23b"}, {"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|hz42mv:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"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/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_7712891241_*|*_10007_*:*_1_*:*_11969723_*|*_3_*:*_2_*:*_582542393_*|*_10009_*:*_2_*:*_352495476_*|*_5_*:*_1_*:*_1300289092_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_185087122_*|*_10005_*:*_1_*:*_53971568488"}], "description": "Use this as reference. Also, edit.\n\nhttps://github.com/daniel-pittman/razor-server/blob/send-custom-code-to-mk/doc/mk-extension.zip.md", "epicLinkSummary": null, "estimate": "PT288000S", "externalId": "11171", "fixedVersions": [], "id": "11171", "issueType": "Task", "key": "RAZOR-850", "labels": [], "originalEstimate": "PT288000S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "resolution": "Done", "resolutionDate": "2016-05-18T14:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DOCS - microkernel update", "timeSpent": "PT0S", "updated": "2016-05-18T14:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c0ad4d32a94006a6494f3", "body": "3 story points for Docs", "created": "2015-01-22T11:32:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Working on this via RAZOR-641.", "created": "2016-01-07T12:03:00.000000"}], "components": ["Microkernel", "Server"], "created": "2014-05-06T17:42:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@16d85e78"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypx2n:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"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_*:*_52773642453_*|*_6_*:*_1_*:*_0"}], "description": "We should support the structured facts that Facter 2 enables; besides having a MK with Facter 2 in it, this also requires changes to the rule language so that rules can access the values of structured facts.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11696", "fixedVersions": ["RAZOR 1.2.0"], "id": "11696", "issueType": "New Feature", "key": "RAZOR-220", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Duplicate", "resolutionDate": "2016-01-07T12:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Support structured facts", "timeSpent": "PT0S", "updated": "2016-01-07T12:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [{"attacher": "623c1069a1d81f0069d8e07a", "created": "2014-05-05T19:03:00.000000", "name": "razor-node1-hwinfo", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10287"}, {"attacher": "623c1069a1d81f0069d8e07a", "created": "2014-05-05T19:03:00.000000", "name": "razor-node2-hwinfo", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10163"}, {"attacher": "623c1069a1d81f0069d8e07a", "created": "2014-05-05T19:03:00.000000", "name": "razor-svc-boot.log", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10184"}], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Digging into this some more in IRC, it appears that iPXE only sees one of the NICs. For some reason, which one it sees changes after an OS is installed. I asked Suresh to follow up with upstream iPXE to see if others know more details about this issue.", "created": "2014-05-05T19:21:00.000000"}, {"author": "623c1069a1d81f0069d8e07a", "body": "I got a reply back from ipxe-dev guys.\n============\nIf you are using undionly.kpxe, then that will only ever see the NIC from which it was chainloaded.  To get access to any other NICs, you will need to use native iPXE drivers (e.g. ipxe.pxe, ipxe.iso, etc) rather than the undionly driver.\n============\n\n\nI followed the installation instructions as I found the razor-server github page. Am I missing something ? Should I be using ipxe.iso or ipxe.ipxe somewhere in the /var/lib/tftpboot ? ", "created": "2014-05-06T09:40:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "What you've done is exactly right - the issue is that Razor right now doesn't take that limitation of undionly.kpxe into account. RAZOR-174 should make that a nonissue - we'd basically fill in the additional hw_info that iPXE doesn't get to from the Microkernel, and then boots from any NIC will be able to identify the node successfully.\n\nFor now, the best workaround in your situation is to include some other criterion for finding nodes in match_nodes_on, e.g. the uuid\n", "created": "2014-05-06T12:18:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Addressed by https://github.com/puppetlabs/razor-server/pull/212", "created": "2014-05-19T23:35:00.000000"}], "components": ["QA", "Server"], "created": "2014-05-05T19:03:00.000000", "creator": "623c1069a1d81f0069d8e07a", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4ecb1a9b"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1pb:"}, {"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": "06/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_768499983_*|*_1_*:*_1_*:*_1225932638_*|*_10007_*:*_1_*:*_68740237_*|*_5_*:*_1_*:*_1542646457_*|*_6_*:*_1_*:*_0"}], "description": "Attached are the complete hw_info for a single physical node that has been marked as two separate nodes by razor. The match_nodes_on is using mac addresses.  Also provided are svc/boot logs.\n\nNote this issue occurs only after installation of OS ( centos) , have not tested on other oses.\n\n\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11502", "fixedVersions": ["RAZOR 0.15.0"], "id": "11502", "issueType": "Bug", "key": "RAZOR-218", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c1069a1d81f0069d8e07a", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "System with two nics is being recognized as two different nodes", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in:\n- Client commit c109e92\n- Server commit 6761f65", "created": "2014-05-13T15:49:00.000000"}], "components": ["Client", "DOCS", "QA", "Server"], "created": "2014-05-05T18:54:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3d7186d9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyteyn:"}, {"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_*:*_670931910_*|*_1_*:*_1_*:*_670120558_*|*_10007_*:*_1_*:*_5385668_*|*_3_*:*_1_*:*_4490693_*|*_5_*:*_1_*:*_2255397931_*|*_6_*:*_1_*:*_0"}], "description": "For filing bugs, having the version numbers readily available would be helpful. Add the command: `razor --version`/`razor -v` to show two lines, server version # and client version #.\n\nAdditionally, it would be helpful to include the version numbers for JBoss and TorqueBox.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11383", "fixedVersions": ["RAZOR 0.15.0"], "id": "11383", "issueType": "Improvement", "key": "RAZOR-217", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-21T10:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Expose Razor version numbers in API and CLI", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in:\n- Client commit 563fb2b.\n- Server commit 726f3e1.", "created": "2014-05-16T18:09:00.000000"}], "components": ["Client", "QA", "Server"], "created": "2014-05-05T13:29:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@150d53d4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyteyf:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_403211116_*|*_1_*:*_1_*:*_699641133_*|*_10007_*:*_1_*:*_76460946_*|*_3_*:*_1_*:*_191026643_*|*_5_*:*_1_*:*_2255497217_*|*_6_*:*_1_*:*_0"}], "description": "Right now, in order for the client to format arguments in JSON or as a boolean to fit the server-side type specification, the client maintains a .yaml file to convert the parameters before sending them off. This should instead be maintained on the server, making it easier to add or modify commands server-side without requiring an accompanying client-side change.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11500", "fixedVersions": ["RAZOR 0.15.0"], "id": "11500", "issueType": "Bug", "key": "RAZOR-216", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-21T10:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Remove a priori knowledge of command arguments from client", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c12047910a200718b9434", "attachments": [], "comments": [{"author": "623c12047910a200718b9434", "body": "This has been addressed in PR https://github.com/puppetlabs/razor-server/pull/174", "created": "2014-05-04T19:12:00.000000"}], "components": [], "created": "2014-05-04T18:29:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b64f7d8"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyu0g7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_32284468307_*|*_6_*:*_1_*:*_0"}], "description": "When looking at queues in spec tests. Trying to test that a job is not published, eg:\n\n      expect {\n        repo.set_source(command, { 'url' => 'file:///dev/null', 'refresh' => true })\n      }.not_to have_published(\n        'class'     => repo.class.name,\n        'instance'  => repo.pk_hash,\n        'message'  => 'make_the_repo_accessible'\n      ).on(queue)\n\nfails with:\nRazor::Data::Repo set_repo_source should publish a make_the_repo_accessible job when the repo is updated and refresh is not set (default to true)\n     Failure/Error: expect {\n     NoMethodError:\n       undefined method `map' for nil:NilClass\n     # ./spec/lib/razor/fake_queue.rb:25:in `(root)'\n     # ./spec/data/repo_spec.rb:658:in `(root)'\n\nIt turns out slice returns nil if the slice is empty as opposed to an empty array.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11721", "fixedVersions": [], "id": "11721", "issueType": "Bug", "key": "RAZOR-215", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Done", "resolutionDate": "2015-05-13T10:24:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Can't use expect not_to have_published", "timeSpent": "PT0S", "updated": "2015-05-13T10:24:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Microkernel", "Server"], "created": "2014-05-01T15:47:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4fac1d71"}, {"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|hytzkv:"}, {"fieldName": "UX Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Major"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3101271_*|*_6_*:*_1_*:*_0"}], "description": "A recent build of the MK includes Facter 2.0.1, and that is definitely incompatible with the code as written -- we grabbed the version in a way that wasn't technically \"API\", so that broke.\n\nI understand from the public docs that Facter 2.0.1 also brings structured facts to the table, so we have potentially greater incompatibilities as yet uncovered.\n\nWe also shipped in PE 3.2 with Facter < 2.0.0, so this is a source of two potential incompatibilities: \n\nOne, users who rebuild an ISO image to include a custom fact, or custom binaries, may no longer be able to do so with PE 3.3.  This is a reasonable common question on the mailing list, so we can infer it is a reasonably common behaviour.\n\nTwo, if Puppet ships with Facter 2.0.1, and the MK has Facter < 2.0.0, facts written to take advantage of new DSL features in Puppet will not be compatible with the Razor MK -- and given we are making it easier to extend at runtime, without having to do a rebuild, we can expect more users to take advantage of the (frequently requested) feature.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11694", "fixedVersions": ["RAZOR 0.15.0"], "id": "11694", "issueType": "Bug", "key": "RAZOR-214", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Duplicate", "resolutionDate": "2014-05-01T16:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Incompatible with Facter 2.0.1", "timeSpent": "PT0S", "updated": "2014-05-21T19:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by PR https://github.com/puppetlabs/razor-server/pull/224.", "created": "2014-05-27T16:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commits 0d104bd and/or f1d4b53.", "created": "2014-05-27T18:24:00.000000"}], "components": ["QA", "Server"], "created": "2014-04-30T16:30:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4ed367a9"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1q7:"}, {"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_*:*_164855662_*|*_1_*:*_1_*:*_2312744452_*|*_10007_*:*_1_*:*_7725481_*|*_3_*:*_1_*:*_19071449_*|*_5_*:*_1_*:*_1542581858_*|*_6_*:*_1_*:*_0"}], "description": "The `create-repo` help, at the least, includes one extra line spacing at the end, plus four extra line spacings between the \"# Attributes\" section and the \"# EXAMPLES\" section.\n\n{noformat}\nFrom http://localhost:8080/api:\n\n# SYNOPSIS\nCreate a new repository, from an ISO image or a URL\n\n# DESCRIPTION\nCreate a new repository, which can either contain the content to install a\nnode, or simply point to an existing online repository by URL.\n\n\n# Access Control\n\nThis command's access control pattern: `commands:create-repo:%{name}`\n\nWords surrounded by `%{...}` are substitutions from the input data: typically\nthe name of the object being modified, or some other critical detail, these\nallow roles to be granted partial access to modify the system.\n\nFor more detail on how the permission strings are structured and work, you can\nsee the [Shiro Permissions documentation][shiro].  That pattern is expanded\nand then a permission check applied to it, before the command is authorized.\n\nThese checks only apply if security is enabled in the Razor configuration\nfile; on this server security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n# Attributes\n\n * name\n   - The name of the repository.\n   - This attribute is required\n   - It must be one of string.\n   - It must be between 1 and 250 in length.\n\n * url\n   - The URL of the remote repository to use.\n   - It must be one of string.\n   - If present, iso-url must not be present.\n   - It must be between 1 and 1000 in length.\n\n * iso-url\n   - The URL of the ISO image to download and unpack to create the\n   repository.  This can be an HTTP or HTTPS URL, or it can be a\n   file URL.\n   \n   In the later case, the file path is interpreted as a path on the\n   Razor server, rather than a path on the client.  This requires that\n   you manually place the ISO image on the server before invoking the\n   command.\n   - It must be one of string.\n   - If present, url must not be present.\n   - It must be between 1 and 1000 in length.\n\n * task\n   - The task associated with this repository.  This is used to install\n   nodes that match a policy using this repository; generally it should\n   match the OS that the URL or ISO-URL attributes point to.\n   - This attribute is required\n   - It must be one of object.\n   \n   # Attributes\n   \n    * name\n      - The name of the task.\n      - This attribute is required\n      - It must be one of string.\n   \n   \n\n\n\n# EXAMPLES\n  Create a repository from an ISO image, which will be downloaded and unpacked\n  by the razor-server in the background:\n  \n      {\n        \"name\":    \"fedora19\",\n        \"iso-url\": \"http://example.com/Fedora-19-x86_64-DVD.iso\"\n        \"task\":    \"fedora\"\n      }\n  \n  You can also unpack an ISO image from a file *on the server*; this does not\n  upload the file from the client:\n      {\n        \"name\":    \"fedora19\",\n        \"iso-url\": \"file:///tmp/Fedora-19-x86_64-DVD.iso\"\n        \"task\":    \"fedora\"\n      }\n  \n  Finally, you can providing a `url` property when you create the repository;\n  this form is merely a pointer to a resource somehwere and nothing will be\n  downloaded onto the Razor server:\n  \n      {\n        \"name\": \"fedora19\",\n        \"url\":  \"http://mirrors.n-ix.net/fedora/linux/releases/19/Fedora/x86_64/os/\"\n        \"task\": \"fedora\"\n      }\n\n\n{noformat}\n\nThe above is for the `create-repo` command, but also seems to apply to others.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "10974", "fixedVersions": [], "id": "10974", "issueType": "Improvement", "key": "RAZOR-213", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Inconsistent line spacing in command help", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "623a45e9562ab90069f7e2d1", "body": "strace output ,lots of miss open files, i don't know if this caused the issue.\n\nmprotect(0x7f0ea6740000, 4096, PROT_READ) = 0\nopen(\"/usr/share/gems/gems/json-1.7.7/lib/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/gems/ruby/json-1.7.7/lib/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/share/gems/gems/razor-mk-agent-003/lib/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/share/ruby/site_ruby/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/lib64/ruby/site_ruby/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/ruby/vendor_ruby/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/ruby/vendor_ruby/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/rubygems/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/ruby/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/ruby/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = 7\nfcntl(7, F_GETFD)                       = 0x1 (flags FD_CLOEXEC)\nfstat(7, {st_mode=S_IFREG|0755, st_size=11360, ...}) = 0\nfstat(7, {st_mode=S_IFREG|0755, st_size=11360, ...}) = 0\nclose(7)                                = 0\nopen(\"/usr/lib64/ruby/enc/utf_16be.so\", O_RDONLY|O_CLOEXEC) = 7\nread(7, \"\\177ELF\\2\\1\\1\\0\\0\\0\\0\\0\\0\\0\\0\\0\\3\\0>\\0\\1\\0\\0\\0\\340\\t\\0\\0\\0\\0\\0\\0\"..., 832) = 832\nfstat(7, {st_mode=S_IFREG|0755, st_size=11360, ...}) = 0\nmmap(NULL, 2105544, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 0x7f0ea6338000\nmprotect(0x7f0ea6339000, 2097152, PROT_NONE) = 0\nmmap(0x7f0ea6539000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x1000) = 0x7f0ea6539000\nclose(7)                                = 0\nmprotect(0x7f0ea6539000, 4096, PROT_READ) = 0\nopen(\"/usr/share/gems/gems/json-1.7.7/lib/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/gems/ruby/json-1.7.7/lib/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/share/gems/gems/razor-mk-agent-003/lib/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/share/ruby/site_ruby/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/lib64/ruby/site_ruby/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/ruby/vendor_ruby/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/ruby/vendor_ruby/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/rubygems/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/ruby/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/ruby/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = 7\nfcntl(7, F_GETFD)                       = 0x1 (flags FD_CLOEXEC)\nfstat(7, {st_mode=S_IFREG|0755, st_size=11360, ...}) = 0\nfstat(7, {st_mode=S_IFREG|0755, st_size=11360, ...}) = 0\nclose(7)                                = 0\nopen(\"/usr/lib64/ruby/enc/utf_16le.so\", O_RDONLY|O_CLOEXEC) = 7\nread(7, \"\\177ELF\\2\\1\\1\\0\\0\\0\\0\\0\\0\\0\\0\\0\\3\\0>\\0\\1\\0\\0\\0\\340\\t\\0\\0\\0\\0\\0\\0\"..., 832) = 832\nfstat(7, {st_mode=S_IFREG|0755, st_size=11360, ...}) = 0\nmmap(NULL, 2105544, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 0x7f0ea6135000\nmprotect(0x7f0ea6136000, 2097152, PROT_NONE) = 0\nmmap(0x7f0ea6336000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x1000) = 0x7f0ea6336000\nclose(7)                                = 0\nmprotect(0x7f0ea6336000, 4096, PROT_READ) = 0\nopen(\"/usr/share/gems/gems/json-1.7.7/lib/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/gems/ruby/json-1.7.7/lib/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/share/gems/gems/razor-mk-agent-003/lib/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/share/ruby/site_ruby/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/lib64/ruby/site_ruby/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/ruby/vendor_ruby/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/ruby/vendor_ruby/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/rubygems/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/ruby/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/ruby/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = 7\nfcntl(7, F_GETFD)                       = 0x1 (flags FD_CLOEXEC)\nfstat(7, {st_mode=S_IFREG|0755, st_size=11352, ...}) = 0\nfstat(7, {st_mode=S_IFREG|0755, st_size=11352, ...}) = 0\nclose(7)                                = 0\nopen(\"/usr/lib64/ruby/enc/utf_32be.so\", O_RDONLY|O_CLOEXEC) = 7\nread(7, \"\\177ELF\\2\\1\\1\\0\\0\\0\\0\\0\\0\\0\\0\\0\\3\\0>\\0\\1\\0\\0\\0\\340\\t\\0\\0\\0\\0\\0\\0\"..., 832) = 832\nfstat(7, {st_mode=S_IFREG|0755, st_size=11352, ...}) = 0\nmmap(NULL, 2105544, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 7, 0) = 0x7f0ea5f32000\nmprotect(0x7f0ea5f33000, 2097152, PROT_NONE) = 0\nmmap(0x7f0ea6133000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 7, 0x1000) = 0x7f0ea6133000\nclose(7)                                = 0\nmprotect(0x7f0ea6133000, 4096, PROT_READ) = 0\nopen(\"/usr/share/gems/gems/json-1.7.7/lib/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/gems/ruby/json-1.7.7/lib/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/share/gems/gems/razor-mk-agent-003/lib/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/share/ruby/site_ruby/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/local/lib64/ruby/site_ruby/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/ruby/vendor_ruby/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/ruby/vendor_ruby/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/rubygems/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/share/ruby/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)\nopen(\"/usr/lib64/ruby/enc/utf_32le.so\", O_RDONLY|O_CLOEXEC) = 7\nfcntl(7, F_GETFD)                       = 0x1 (flags FD_CLOEXEC)\nfstat(7, {st_mode=S_IFREG|0755, st_size=11352, ...}) = 0", "created": "2014-04-28T02:45:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The missing files look like they are caused by the Ruby interpreter starting and should be ok.\n\nWhat happens when you run facter from the command line ? Are there any errors there ?\n\nAlso, what version of the MK is that ? I assume it's the latest (http://links.puppetlabs.com/razor-microkernel-004.tar)", "created": "2014-04-29T18:12:00.000000"}, {"author": "623a45e9562ab90069f7e2d1", "body": "it's a custom build Micro kernel based on the new git repo.  how do i run the facter?\n", "created": "2014-04-29T20:46:00.000000"}, {"author": "623a45e9562ab90069f7e2d1", "body": "here it is, facter is fine\n\n[root@localhost ~]# facter\narchitecture => x86_64\nbios_release_date => 12/01/2006\nbios_vendor => innotek GmbH\nbios_version => VirtualBox\nblockdevice_sda_model => VBOX HARDDISK\nblockdevice_sda_size => 8589934592\nblockdevice_sda_vendor => ATA\nblockdevice_sr0_model => CD-ROM\nblockdevice_sr0_size => 1073741312\nblockdevice_sr0_vendor => VBOX\nblockdevices => sda,sr0\nboardmanufacturer => Oracle Corporation\nboardproductname => VirtualBox\nboardserialnumber => 0\ndomain => localdomain\nfacterversion => 2.0.1\nfilesystems => ext2,ext3,ext4,iso9660,squashfs\nfqdn => localhost.localdomain\nhardwareisa => x86_64\nhardwaremodel => x86_64\nhostname => localhost\nid => root\ninterfaces => enp0s3,lo\nipaddress => 192.168.56.38\nipaddress_enp0s3 => 192.168.56.38\nipaddress_lo => 127.0.0.1\nis_virtual => true\nkernel => Linux\nkernelmajversion => 3.13\nkernelrelease => 3.13.9-100.fc19.x86_64\nkernelversion => 3.13.9\nmacaddress => 08:00:27:87:7c:45\nmacaddress_enp0s3 => 08:00:27:87:7c:45\nmanufacturer => innotek GmbH\nmemoryfree => 1.24 GB\nmemoryfree_mb => 1266.23\nmemorysize => 1.31 GB\nmemorysize_mb => 1345.02\nnetmask => 255.255.255.0\nnetmask_enp0s3 => 255.255.255.0\nnetmask_lo => 255.0.0.0\nnetwork_enp0s3 => 192.168.56.0\nnetwork_lo => 127.0.0.0\noperatingsystem => Fedora\noperatingsystemmajrelease => 19\noperatingsystemrelease => 19\nosfamily => RedHat\npath => /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin\nphysicalprocessorcount => 1\nprocessor0 => Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz\nprocessorcount => 1\nproductname => VirtualBox\nps => ps -ef\nrubysitedir => /usr/local/share/ruby/site_ruby/\nrubyversion => 2.0.0\nselinux => false\nserialnumber => 0\nsshdsakey => AAAAB3NzaC1kc3MAAACBAOGNjQ/CUC3NQgOjDVwkhew2C9Rtdm2yd4y+d+sfFc911VZPcLuZdY9opc6+a0W8KVHLQl/oOYEnDC/uvCRNOJXmstK9ZQSJewt7gVVmi3TOIUuPc0p/k6/CC+mPpqUMK8HY7N8ZVwUVvQdDyRwzeRiJGACtrpTO9l+VsW39Jc/3AAAAFQCs26M8Fpcv1RYntsjA/6U9teZUSQAAAIAuV4SAIqKVuwB/fP99ssMQNALeg7MQX/YEUcWdAmMm/YmUqzIXB7tr0VbVPz46pXAEmFwAKZIPgBgyAdNIgmzwROnbj0jz4st19vBGdIr4RbU+DGURIo+6Hx5M6GKQpty2PQTuMb7V5iX0P0XiXWGHUfh0Ps2ZFtpPm/kFrEQxrAAAAIATvYE5bJLSvVEwdT58xK/ZVuVwt8oZJCIIc5OEycElvR/7esLWjZBfrFFs7qvs896U+TSrJ5BZ89e0ut3QHHFoZS3gaXD/HTYnKhOgvHx8X7zB0bgJG8vT5RqORNYuOFUAn0f/FM/xIVDM7CmbmJfsXRVUxZFh4i8YCGHHvCFWOA==\nsshecdsakey => AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMhnZGAQq6CJ0sFCiL1UploV2HfFm8Fe77YCOHQwA7twux+FlMh4RznS0TKKjn5UE+onK4DKiLoy0O0le80XdmQ=\nsshfp_dsa => SSHFP 2 1 218764eb221df4d711951cbdbf27dc07b0ebfa06\nSSHFP 2 2 b9cdcaf26f8731c507044d9aa69135b9ebf11772a31644e20ac4e54399261b45\nsshfp_ecdsa => SSHFP 3 1 aeb874e70c2e581ca0441633d08d68b9ca0d0a5b\nSSHFP 3 2 92a845c69854a6c0c30dd6646b29b1c1b9fc346154c81a62e2030720da742e5c\nsshfp_rsa => SSHFP 1 1 fae41091500f4f6a70e37b55a19a35a9b644f43f\nSSHFP 1 2 477e991994722e510265e77ca8185bab01932560facd5b728686dd53ec2381a6\nsshrsakey => AAAAB3NzaC1yc2EAAAADAQABAAABAQDUjUryfS5pIijSOT+U+XHk/h0DVUTT8nhgfe5S6rpJTxRsD7X/wpBmPKUFEUc6V3NzlPa0aFC4kymg9VIADbWwvI44ltuCh9ScXZEs2iZCtCPdzd8wMD03gMB3InLiT2OLi6Jspc1AbPHsjd5jEO32wTnubN9/jGPRELnGSFqElWKPFfiq+nf4lSJ/Zo5U2tkt7HK7LxmvvEWD4cI4kIVDs3M7GOTbDjbWIsOKEUo7f2/3YqDfJOJoOJET2SbR1yix+ibChg7kQ4oE+kIt8ydn2vSR1sd1EHLDImZ5PsTSpS6QdvDczoE6JxoJdBgqJZr3ULnonPyFoP/B36DZMuj3\nswapfree => 0.00 MB\nswapfree_mb => 0.00\nswapsize => 0.00 MB\nswapsize_mb => 0.00\ntimezone => UTC\ntype => Other\nuniqueid => 007f0100\nuptime => 0:03 hours\nuptime_days => 0\nuptime_hours => 0\nuptime_seconds => 212\nuuid => DC614F0C-4087-4F30-AA2C-7819D076A5C4\nvirtual => virtualbox\n[root@localhost ~]#\n", "created": "2014-04-29T20:52:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Ha, I was just debugging this.  There is an incompatible change in Facter 2.0.1 that causes this exact failure.  I have a fix for it, which seems to work correctly in my additional testing, so https://github.com/puppetlabs/razor-el-mk/pull/21 - aab5e6cc6d994a43686a0e6d10a8cb1ee5350573\n\nYou should be able to just apply that locally and get a working ISO build.", "created": "2014-05-01T16:37:00.000000"}, {"author": "623a45e9562ab90069f7e2d1", "body": "Hi Daniel:\n    Just tested it, it works now, thanks so much, you da man. \n\nI am testing use Razor to create the hardware raid by using MegaCli command line with a bash script now. \nthat's why i need build my own microkernel. \n\nBut do we have any idea, there is an official build which going to support this?\n\n:D\n", "created": "2014-05-01T21:07:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Thanks for the confirmation -- great to know it fixes it for more than just me.  Quietly, since we should talk about things like this on the mailing list rather than in an unrelated ticket, I found this while working on a change that will allow you to send binaries and custom facts down to the node at runtime without rebuilding the ISO, which is part of a solution.  Beyond that... not really.  You should make sure there is a separate, top level ticket in here that details what you need to do, and how it should work, so that we have something to target.", "created": "2014-05-02T09:32:00.000000"}, {"author": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "body": "This was reopened with no explanation. It's very old so if there's an issue it's probably best to open a new ticket.", "created": "2016-06-08T16:41:00.000000"}], "components": ["Microkernel", "QA"], "created": "2014-04-28T02:39:00.000000", "creator": "623a45e9562ab90069f7e2d1", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@21dd5ba0"}, {"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|hyq5xz:"}, {"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": "10008_*:*_1_*:*_346996437_*|*_1_*:*_1_*:*_309540033_*|*_10007_*:*_1_*:*_2052956_*|*_5_*:*_1_*:*_413451_*|*_6_*:*_2_*:*_65371036543_*|*_10011_*:*_1_*:*_147275023_*|*_10004_*:*_1_*:*_573921838"}], "description": "Apr 28 08:37:48 localhost systemd[1]: mk.service: main process exited, code=exited, status=1/FAILURE\nApr 28 08:37:48 localhost systemd[1]: Failed to start Razor Microkernel agent.\nApr 28 08:37:48 localhost systemd[1]: Unit mk.service entered failed state.\nApr 28 08:38:03 localhost systemd[1]: Starting Razor Microkernel agent...\nApr 28 08:38:04 localhost microkernel[3336]: error running register: undefined method `kernel' for Facter:Module\nApr 28 08:38:04 localhost microkernel[3336]: usage: mk <command> [...]\nApr 28 08:38:04 localhost microkernel[3336]: Invoke an MK script command, and exit.  Available commands:\nApr 28 08:38:04 localhost microkernel[3336]: * register", "environment": "linux", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11381", "fixedVersions": ["RAZOR 0.15.0"], "id": "11381", "issueType": "Bug", "key": "RAZOR-211", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623a45e9562ab90069f7e2d1", "resolution": "Duplicate", "resolutionDate": "2016-06-08T16:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "mk.service not able start", "timeSpent": "PT0S", "updated": "2016-06-08T16:41:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Hi Nick,\n\nI don't have Chef set up here .. can you confirm that removing `chef-client` from that line does fix the issue ? Could you attach the install.erb that you tested this with ? (just to be extra cautious to make sure we merge the right thing)", "created": "2014-04-25T12:03:00.000000"}, {"author": "557058:0b59f0bc-db6c-4fa2-ad08-e43e4cf574ea", "body": "I don't have access to my work PC right now, but our workaround was emptying the broker.chef_client variable, which should achieve the same as you're suggesting.\n\nThe install.erb file is the same as the one in my add-like-matcher pull request, so you can find it there. ", "created": "2014-04-25T12:09:00.000000"}, {"author": "623a4c78a1d81f0069d81254", "body": "The fix is correct, the initial chef-client run never worked without it, so please go ahead and apply it.", "created": "2014-10-07T09:32:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I just committed a fix as b058ac35", "created": "2014-10-09T12:17:00.000000"}], "components": [], "created": "2014-04-25T03:28:00.000000", "creator": "557058:0b59f0bc-db6c-4fa2-ad08-e43e4cf574ea", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@716fd0c8"}, {"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|hytvn3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "25/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14460555206_*|*_6_*:*_1_*:*_0"}], "description": "The default chef.broker/install.erb that is shipped with Razor contains an error at the end of the file.\n\n{noformat}\n<%= broker.chef_client %> chef-client -j /etc/chef/first-boot.json -E <%= broker.environment %>\n{noformat}\n\nIf chef_client and environment are set as normal in the broker config, the resulting command will be in our case:\n\n{noformat}\nchef-client chef-client -j /etc/chef/first-boot.json -E _default\n{noformat}\n\nThis will result in a the Chef error along the lines of:\n\n{noformat}\ncannot find recipe file /chef-client\n{noformat}\n\nSuggested fix: remove the extraneous mention of \"chef-client\" from the command, seeing as this is already defined by the preceding broker config value of chef_client.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11691", "fixedVersions": ["RAZOR 0.16.0"], "id": "11691", "issueType": "Bug", "key": "RAZOR-209", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:0b59f0bc-db6c-4fa2-ad08-e43e4cf574ea", "resolution": "Fixed", "resolutionDate": "2014-10-09T12:17:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Invalid syntax for chef.broker/install.rb", "timeSpent": "PT0S", "updated": "2014-10-09T12:17:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit c3bba0e.", "created": "2014-04-23T14:20:00.000000"}], "components": ["Client", "QA"], "created": "2014-04-22T18:20:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@375f59fc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq5z3:"}, {"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_*:*_1048590173_*|*_1_*:*_1_*:*_56570561_*|*_10007_*:*_1_*:*_15423096_*|*_5_*:*_1_*:*_3463768436_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147243358"}], "description": "The client currently does not allow 'reference' types for arguments. This type would mean a variable could be either a string (transmitted as a string) or a JSON string (transmitted as JSON). The immediate need for this feature is `create-repo`'s `task` argument to accept both forms:\n\n{code}\nrazor create-repo --name name --iso-url some_url --task noop\n{code}\nand\n{code}\nrazor create-repo --name name --iso-url some_url --task '{\"name\": \"noop\"}'\n{code}\n\nIf the 'reference' argument can be parsed as JSON, it will use JSON, otherwise it will send the whole string.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11169", "fixedVersions": ["RAZOR 0.15.0"], "id": "11169", "issueType": "Bug", "key": "RAZOR-208", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Cannot use both short and long forms for task in create-repo", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Requires simple review of https://github.com/puppetlabs/razor-server/pull/191", "created": "2014-05-15T16:31:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 6600e4f.", "created": "2014-05-20T16:25:00.000000"}], "components": ["QA", "Server"], "created": "2014-04-21T17:20:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1a88f31d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1p3:"}, {"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": "15/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_776604621_*|*_1_*:*_1_*:*_2499657315_*|*_3_*:*_1_*:*_2649368_*|*_5_*:*_1_*:*_1542658946_*|*_6_*:*_1_*:*_0"}], "description": "At some stage the node_metadata parameter was lost from the create-policy command.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11537", "fixedVersions": ["RAZOR 0.15.0"], "id": "11537", "issueType": "Bug", "key": "RAZOR-207", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "The node_metadata parameter was lost from create-policy", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Assuming #1.\n\nFixed in commit 980c7be.", "created": "2014-04-23T12:31:00.000000"}], "components": [], "created": "2014-04-18T16:20:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@625f372a"}, {"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|hytbcv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_418297416_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_20990"}], "description": "Using the native version of libarchive on OSX, extraction of ISO files fails. To prevent this from causing rspec failures when unpacking ISOs for repos, there is a `pending` block to excuse all Mac environment executions from needing to pass those tests.\n\nHowever, when using a third-party version of libarchive, the tests actually pass and yield the following spec test errors:\n{code}\nFailures:\n\n  1) Razor::Data::Repo on destroy should remove the repo's unpacked iso directory FIXED\n     Expected pending 'libarchive ISO support on OSX' to fail. No Error was raised.\n     # ./spec/data/repo_spec.rb:420:in `(root)'\n\n  2) Razor::Data::Repo unpack_repo should unpack the repo into the filesystem_safe_name under root FIXED\n     Expected pending 'libarchive ISO support on OSX' to fail. No Error was raised.\n     # ./spec/data/repo_spec.rb:540:in `(root)'\n{code}\n\nThis should be resolved in one of two ways:\n# Assume all rspec executions will take place in an environment with a properly working libarchive version.\n# Adjust the assumption to fail for OSX's native libarchive but pass for OSX's third-party libarchive", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11536", "fixedVersions": [], "id": "11536", "issueType": "Bug", "key": "RAZOR-206", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-04-23T12:31:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Resolve rspec issues on Mac OSX with libarchive", "timeSpent": "PT0S", "updated": "2014-04-23T12:31:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "assuming complete.", "created": "2015-05-13T10:22:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Reopening since this has not been merged yet. All that remains is testing an install on e.g. CentOS using a password with # character(s).", "created": "2015-05-13T10:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing due to lack of activity. If this is still needed, we welcome pull requests and reopening the ticket.", "created": "2019-12-02T20:51:00.000000"}], "components": ["Server"], "created": "2014-04-18T15:46:00.000000", "creator": "5baac4f0b9665979c55882f7", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1e7676bb"}, {"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:a69e978d-6cea-49f9-9227-3a3ef8a776c0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:p"}, {"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/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2771016083_*|*_10007_*:*_2_*:*_54681351008_*|*_3_*:*_1_*:*_2571323_*|*_6_*:*_2_*:*_2004464_*|*_10006_*:*_1_*:*_120030550339"}], "description": "Using a # character anywhere in a root password when defining a policy will break the kickstart script generated by Razor when it is run on a node.", "environment": "CentOS 6.5", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11719", "fixedVersions": [], "id": "11719", "issueType": "Bug", "key": "RAZOR-205", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "5baac4f0b9665979c55882f7", "resolution": "Won't Fix", "resolutionDate": "2019-12-02T20:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "# character in root password causes kickstart script to fail", "timeSpent": "PT0S", "updated": "2021-12-08T02:45:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:20:00.000000"}], "components": ["Server"], "created": "2014-04-18T13:04:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@9ed86f2"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytsan:"}, {"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": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_33686168552_*|*_6_*:*_1_*:*_0"}], "description": "We should be testing with more than just one JRE/JDK version; this obviously depends on QE giving us test systems with more than one version, but once that is delivered we should ensure that we take advantage of it.\n\nThe ticket tracking their work is linked to this.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11534", "fixedVersions": [], "id": "11534", "issueType": "Improvement", "key": "RAZOR-204", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Test with JDE/JRE 6, 7, and 8", "timeSpent": "PT0S", "updated": "2015-05-13T10:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This looks like a gap between documentation and implementation. Two properties `enabled` and `max_count` were no longer allowed in the `create-policy` command's validation, even though the documentation includes them. There is a workaround of calling `enable-policy` and `modify-policy-max-count`, but these two fields should be allowed in the command as the documentation specifies.", "created": "2014-04-18T17:05:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in f679704.", "created": "2014-04-21T11:26:00.000000"}], "components": ["QA"], "created": "2014-04-18T04:12:00.000000", "creator": "557058:0b59f0bc-db6c-4fa2-ad08-e43e4cf574ea", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@30053146"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq71z:"}, {"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/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_794373_*|*_1_*:*_1_*:*_46535507_*|*_10007_*:*_1_*:*_238646357_*|*_5_*:*_1_*:*_4672754970_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_169303935"}], "description": "When creating a new policy using the lastest version of Razor, the enabled property cannot be provided any more.\n\nroot@razor:/opt/razor-client/bin# ./razor create-policy --json=/root/policy_ubuntu_12.04.json\nError from doing POST http://localhost:8080/api/commands/create-policy\n422 Unprocessable Entity\nerror: \"extra attribute enabled was present in the command, but is not allowed\"\n\nThis keeps nodes from proceeding to the next step after the microkernel. When manually setting the enabled property in the database, the node continues as expected.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11926", "fixedVersions": ["RAZOR 0.15.0"], "id": "11926", "issueType": "Bug", "key": "RAZOR-203", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:0b59f0bc-db6c-4fa2-ad08-e43e4cf574ea", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Created policies are not set to enabled", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 980c7be.", "created": "2014-04-23T14:21:00.000000"}], "components": ["QA", "Server"], "created": "2014-04-17T17:00:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67471735"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq5yv:"}, {"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_*:*_1055045783_*|*_1_*:*_1_*:*_65754900_*|*_10007_*:*_1_*:*_432126078_*|*_3_*:*_1_*:*_4448292_*|*_5_*:*_1_*:*_3463779100_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147250858"}], "description": "Using `create-repo` with the `iso_url` property will lead to the ISO being unpacked in `/opt/puppet/var/razor/repo/$repo_name`. When `delete-repo` is called, this folder isn't deleted.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11378", "fixedVersions": ["RAZOR 0.15.0"], "id": "11378", "issueType": "Bug", "key": "RAZOR-202", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Unpacked ISO not deleted after repo is deleted", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:19:00.000000"}], "components": ["Client"], "created": "2014-04-14T15:04:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@17e81fa4"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytpqn:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "21.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_34024499289_*|*_6_*:*_1_*:*_0"}], "description": "We should send locale information from the client to the server using standard HTTP headers, and ensure that correctly reflects the users desired message and content encoding and language.\n\nThat allows the server to respond in the clients preferred language.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11692", "fixedVersions": [], "id": "11692", "issueType": "Improvement", "key": "RAZOR-200", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Send locale information to the server via HTTP headers", "timeSpent": "PT0S", "updated": "2015-05-13T10:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:19:00.000000"}], "components": ["Server"], "created": "2014-04-14T15:03:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5797e7cc"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytpqf:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_34024554410_*|*_6_*:*_1_*:*_0"}], "description": "We have i18n support on the server using fast_gettext to translate our user-visible messages.  Right now, though, we will serve up messages based on the locale that the server was started under, which may not match the client locale.\n\nWe should enhance the server to extract the language priority list from the HTTP headers, and push that into the fast_gettext content to support client-driven translation.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11679", "fixedVersions": [], "id": "11679", "issueType": "Improvement", "key": "RAZOR-199", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "extract locale from HTTP requests, configure into fast_gettext for each request", "timeSpent": "PT0S", "updated": "2015-05-13T10:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I don't understand what you mean by the last bullet point (JSON flags via `' {\"prop\": \"value\"}'`)", "created": "2014-04-10T17:55:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "That would be in-line JSON", "created": "2014-04-10T23:41:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I would just get rid of those semi-JSON syntaxes altogether, i.e. you either say\n{code}\ncreate-policy --name p1 --repo rhel6 --task rhel --broker puppet --max-count 7 \\\n  --root-password secret --hostname 'host${id}.example.com' --tag t1 \\\n  --tag t2 --tag t3 --before p7\n{code}\n\nor\n\n{code}\ncreate-policy --json policy.json\n{code}", "created": "2014-04-11T12:01:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91]: I agree. It will, however, be more complicated for `rule` (`create-tag`, `add-policy-tag`, `update-tag-rule`) and `configuration` (`create-broker`). `rule` example below.\n\n{code}\ncreate-tag --name tagname --rule '[\"=\", [\"fact\", \"processorcount\"], \"2\"]'\n{code}", "created": "2014-04-11T12:49:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Updated the description to reflect the latest view on this.", "created": "2014-05-05T20:00:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in:\n- Client commit da96af8\n- Server commit bab1044", "created": "2014-05-12T18:22:00.000000"}], "components": ["Client", "QA", "Server"], "created": "2014-04-10T17:47:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@f326163"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq4ev:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "UX Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Major"}, {"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": "10008_*:*_1_*:*_1456118_*|*_1_*:*_1_*:*_2246538740_*|*_10007_*:*_1_*:*_520373591_*|*_5_*:*_1_*:*_3001972832_*|*_6_*:*_1_*:*_0"}], "description": "Right now, several commands require that the user have knowledge of how to structure JSON, which does not make a good UX practice. This should be changed to allow three methods of input:\n- No JSON, all just string flags\n- JSON file via `--json` flag [existing]\n- String-based JSON via `'\\{\"prop\": \"value\"\\}'` [existing]\n\nThere are a few tricky cases for this:\n|| Type || Description || Resolution ||\n| Tag Rule | This is a nested array of values. | None \u2014\u00a0this will require pure JSON. |\n| Broker Configuration | This consists of a user-defined JSON object, where they keys (and values) are not known beforehand. | Use a series of `--configuration PARAM=VALUE` entries to generate the JSON object. |\n| Tags for a policy | This is a JSON array where any element can be either:\n-- A string, which references an existing tag\n-- A combination of string and rule, to create a tag | The string case can be solved via multiple --tag entries that get compiled into an array. The combination case, since it is a shortcut anyway, will require pure JSON. |", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11690", "fixedVersions": ["RAZOR 0.15.0"], "id": "11690", "issueType": "Improvement", "key": "RAZOR-198", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-12T18:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow all CLI operation without any JSON knowledge", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Addressed in https://github.com/puppetlabs/razor-server/pull/190 - 24c00ca2ebd099634f38f7ff2b90a927dd06dbf4", "created": "2014-04-24T17:36:00.000000"}], "components": ["QA", "Server"], "created": "2014-04-10T17:24:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6a12a993"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq5y7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "13.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_520709299_*|*_1_*:*_1_*:*_949697425_*|*_10007_*:*_1_*:*_429646135_*|*_3_*:*_1_*:*_260641636_*|*_5_*:*_1_*:*_3463772470_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147268525"}], "description": "Right now we don't expose any information about the structure of commands in help, or capture any information about the meaning of attributes in the DSL that builds them.\n\nWe should fix that: capture any information and notes about the attributes when they are defined, or next to them, and then expose that as part of the help information sent down to the client.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11296", "fixedVersions": ["RAZOR 0.15.0"], "id": "11296", "issueType": "Improvement", "key": "RAZOR-197", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add attribute documentation to generated command help", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/190 - cce697c92d884dcfbf8b7af18b7c85b9ebb6291f", "created": "2014-04-21T16:59:00.000000"}], "components": ["QA", "Server"], "created": "2014-04-10T17:23:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@50376f19"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq5yf:"}, {"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_*:*_520701967_*|*_1_*:*_1_*:*_931345626_*|*_10007_*:*_1_*:*_690943760_*|*_3_*:*_1_*:*_17784978_*|*_5_*:*_1_*:*_3463784067_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147261843"}], "description": "We need to add authz information to the generated documentation for our commands; this should help our users understand how to allow or deny activities on nodes more effectively.\n\nThis probably involves moving from the current messy eval format to a saner format (eg: named printf substitution with '%{name}') in the template.  Which is an overall win anyhow.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11059", "fixedVersions": ["RAZOR 0.15.0"], "id": "11059", "issueType": "Improvement", "key": "RAZOR-196", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add authz information to generated command help", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:19:00.000000"}], "components": ["Server"], "created": "2014-04-10T10:46:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@27cf27c6"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytohj:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "13.0"}, {"fieldName": "UX Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Major"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_34385558304_*|*_6_*:*_1_*:*_0"}], "description": "We now have much better error reporting, which is great, and more importantly, a much better ability to improve the way that errors are reported, and the content of them.\n\nWe should now get a UX and docs review of those strings to make sure that our messages are as clear, meaningful, and helpful as possible.  That covers basic wording, formatting (eg: should slot identifiers be quoted?), and content such as \"do we want to report the bad value\", or \"do we want additional information of some sort added\"?", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10968", "fixedVersions": [], "id": "10968", "issueType": "Improvement", "key": "RAZOR-195", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Review validation error structure, to standardize and improve reporting", "timeSpent": "PT0S", "updated": "2015-05-13T10:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Not actually a bug.", "created": "2014-04-09T17:59:00.000000"}], "components": ["Server"], "created": "2014-04-09T17:30:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@243086b0"}, {"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|hytodr:"}, {"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/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_836609_*|*_6_*:*_2_*:*_908590"}], "description": "The error message returned from the server includes a newline in the full text. For example:\n{code}\n{\"name\":\"create-repo\",\"help\":{\"full\":\"Unfortunately, the `create-repo` command has not been documented.\\n\"}}\n{code}\nThe extra newline should be removed.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11377", "fixedVersions": [], "id": "11377", "issueType": "Bug", "key": "RAZOR-193", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2014-04-09T17:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Extra newline in \"no command help exists\" error message", "timeSpent": "PT0S", "updated": "2014-04-09T17:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Just to keep the scope of this ticket contained: this should only cover changing from taking a reference as '{ \"name\": \"foo\" }' to '\"foo\"' wherever we do that right now - creation of embedded objects should be handled separately", "created": "2014-04-14T13:27:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit e866a83.", "created": "2014-04-15T16:23:00.000000"}], "components": ["QA", "Server"], "created": "2014-04-07T13:55:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c71b175"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq70n:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "UX Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Major"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_501367788_*|*_1_*:*_2_*:*_10091577_*|*_10007_*:*_1_*:*_61962921_*|*_3_*:*_3_*:*_528127802_*|*_5_*:*_1_*:*_4672758706_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_169308399_*|*_10006_*:*_1_*:*_99863419"}], "description": "Right now, if the user wants to reference another entity on the command line, the following is necessary:\n{code}\ncreate-policy --repo '{\"name\":\"centos6.4\"}' --task '{\"name\":\"centos\"}' --broker '{\"name\":\"noop\"}' ...\n{code}\nThis should be simplified to allow just the name of the reference. E.g.:\n{code}\ncreate-policy --repo centos6.4 --task centos --broker noop ...\n{code}\n\nThis change will affect:\n- Create Policy\n- Create Repo\n- Move Policy\n\nImplementation-wise, this should be done on the server side by conforming the data from the short form to the long form, potentially allowing easier embedded, referenced objects to be created in the future.\n\nIn cases where you can supply a new entity, rather than just the reference (which should ideally be all of them), that should still be supported, and can use the string vs object distinction to choose between create and reference.\n\nIdeally this data transformation should happen on the command object, where we attach a new \"deprecated\" type that will match earlier than validation, and can transform the supplied data from the shortcut form to the standard form, then validate only the standard form.  That avoids our code having any special support for these mixed-datatype attributes.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11677", "fixedVersions": ["RAZOR 0.15.0"], "id": "11677", "issueType": "Improvement", "key": "RAZOR-192", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add `\"broker\": \"foo\"` as a shortcut for`\"broker\": {\"name\": \"foo\"}`", "timeSpent": "PT0S", "updated": "2014-06-27T13:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/179 - bd3847eace34296c849a3646d340d827c8b6c95a", "created": "2014-04-09T13:58:00.000000"}], "components": ["QA", "Server"], "created": "2014-04-07T12:57:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@50d4fb75"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6wf:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"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": "09/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4509158_*|*_10007_*:*_1_*:*_161793940_*|*_3_*:*_1_*:*_171941740_*|*_5_*:*_1_*:*_4672747351_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1035939438"}], "description": "The error message for the 'references' validation is not helpful. For example, in create-policy, if one of `repo`, `broker`, or `task` does not match an existing entity, the error message will be the same regardless of which entity did not match:\n{code}\nattribute name must refer to an existing instance\n{code}\nThis should instead be more qualified, reading e.g.:\n{code}\nattribute broker.name must refer to an existing instance\n{code}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11057", "fixedVersions": ["RAZOR 0.15.0"], "id": "11057", "issueType": "Improvement", "key": "RAZOR-191", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Validation should be more precise about what has failed, for nested structures", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c12047910a200718b9434", "attachments": [], "comments": [{"author": "623c12047910a200718b9434", "body": "So.  I upped another commit to the PR that changes this to a set-repo-source command. This, I hope is more in line with feedback from Daniel Pittman.  The new name represents the action that is to be carried out and the desired result i.e. a new source for the repo.\n\nset-repo-source takes these arguments:\n--name    : name of the repo to set a new source on\n--type      : type of repo (url | iso-url)\n--refresh : true (default) | false. Initiate a refresh of the repo or not.\n\nThe use of 'type' is more in line with the desired outcome of a 'set' command.  I was going have --iso-url and --url, but it didnt seem to convey that autonomous nature. Eg set-repo-source --url 'foo', doesnt explicitly indicate that any exisitng iso-url would be deleted and visa versa.\n\nI need to better understand though the command object argument validations.  I can see that there is a type => :bool, but I cant work out how to make \"true\" become true.", "created": "2014-04-13T22:43:00.000000"}, {"author": "623c12047910a200718b9434", "body": "OK, im thinking that set-repo-source is the right name, but im going back to the --url, --iso-url and --refresh options.\n", "created": "2014-04-14T05:38:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Assuming this is complete. The issue had a PR and is over a year old.", "created": "2015-05-13T10:18:00.000000"}], "components": ["Server"], "created": "2014-04-03T16:19:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ff59129"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq95b:"}, {"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": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_34970372896_*|*_6_*:*_1_*:*_0"}], "description": "Add an update-repo command that will allow the update of repo settings.  When the supplied setting are different, the process will trigger a 'make_repo_available' event.\n\nThis is required, because if you create the repo and then policies/tags etc only to realise you botched the definition of the repo, you first have to pull down all the dependants (policies and the like) to delete/recreate the repo. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11687", "fixedVersions": [], "id": "11687", "issueType": "New Feature", "key": "RAZOR-190", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Done", "resolutionDate": "2015-05-13T10:18:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add an update-repo command", "timeSpent": "PT0S", "updated": "2015-05-13T10:18:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/198 - 39a4ba5ac931f9b99e500a18d02039505a02079c", "created": "2014-04-29T14:38:00.000000"}], "components": ["QA"], "created": "2014-04-03T14:28:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4a2925e"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq93j:"}, {"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/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_520024479_*|*_1_*:*_1_*:*_2238608870_*|*_10007_*:*_1_*:*_9100373_*|*_3_*:*_1_*:*_8384559_*|*_5_*:*_1_*:*_3463772497_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147206846"}], "description": "Right now, when a node has the installed flag set, its details include { \"state\": { \"installed\": true }}\n\nWhen that flag is not set, the details contain nothing. Since this is an important piece of information regardless of whether the flag is set or not, it should also always be reported.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11376", "fixedVersions": ["RAZOR 0.15.0"], "id": "11376", "issueType": "Improvement", "key": "RAZOR-189", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Node details should always contain the installed state", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12047910a200718b9434", "body": "Ive consolodate this with the PR for RAZOR-190 because of inter dependencies.", "created": "2014-05-04T19:13:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "A PR was up and this issue is over a year old. Assuming resolved.", "created": "2015-05-13T10:14:00.000000"}], "components": ["Server"], "created": "2014-04-02T20:24:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6f067700"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq953:"}, {"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": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_35041768670_*|*_6_*:*_1_*:*_0"}], "description": "Add a command to refresh a repo that will allow the administrator to re-download the contents of the remote repo to the local razor server.  This is useful when:\n  a) the contents of the upstream repo are updated.  This command will allow the local repo to be synced.\n  b) when you have more than one razor server connected to the one database.  The first server will issue the create-repo command, adding the entry to the database and syncing the local content.  Subsequent servers will not need (or be able to) issue a create-repo cmd for the same repo.  Additional servers can use refresh-repo to sync the content of the repo.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10966", "fixedVersions": [], "id": "10966", "issueType": "New Feature", "key": "RAZOR-188", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Done", "resolutionDate": "2015-05-13T10:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add refresh-repo command", "timeSpent": "PT0S", "updated": "2015-05-13T10:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Not necessary now that we have a strongly typed API.", "created": "2014-04-16T12:11:00.000000"}], "components": ["Client", "Server"], "created": "2014-04-02T19:50:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@312987f4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytlx3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_1182054309_*|*_6_*:*_1_*:*_0"}], "description": "Coercion should be applied consistently and automatically throughout the application. This will improve UX and make client compatibility easier.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11803", "fixedVersions": [], "id": "11803", "issueType": "Improvement", "key": "RAZOR-187", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2014-04-16T12:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Type coercion for API", "timeSpent": "PT0S", "updated": "2014-04-16T12:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: The help documentation is here: https://github.com/smcclellan/razor-server/blob/4604e6ef6e10ed35ebfc525db771854d37a1838f/lib/razor/command/cancel_command.rb", "created": "2014-05-02T18:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This was tracked by https://github.com/puppetlabs/razor-server/pull/193.", "created": "2015-05-29T13:12:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The correct solution here is to delete the repo and recreate it. The failed message (in the message queue) will now be discarded when the repo is deleted, rather than retried (the previous behavior). That work is in RAZOR-762.", "created": "2016-02-02T20:43:00.000000"}], "components": ["DOCS", "Server"], "created": "2014-04-02T17:13:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@118c8673"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq95j:"}, {"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/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_1618960236_*|*_10007_*:*_1_*:*_33264592355_*|*_3_*:*_1_*:*_169641231_*|*_6_*:*_2_*:*_22937361767"}], "description": "When a user issues a 'create-repo --iso-url http://example.com/some.iso' and has a typo in that URL, there is no way for them to cancel that create-repo (nor is there a way to fix the URL)\n\nWith the work in RAZOR-7 we have an easy way to mark a command as 'canceled' and just drop it from the message queue the next time it gets tried.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10964", "fixedVersions": [], "id": "10964", "issueType": "Improvement", "key": "RAZOR-186", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2016-02-02T20:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow users to cancel a background task", "timeSpent": "PT0S", "updated": "2016-02-02T20:47:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/197 - 5439afaeac12a18dcf765a85ada6c9c4323c25f4", "created": "2014-04-29T12:15:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This is waiting on a couple of design decisions, [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91], in the pull request.", "created": "2014-04-30T10:38:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "So, it seems reasonable that this should be applied uniformly.  Working on that now.", "created": "2014-05-05T11:42:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/197 is updated so that 0.14.1-106-gd08db44 now applies this to all commands, and should be sufficiently portable that we can happily add new, similar, commands without any overwhelming cost.", "created": "2014-05-09T15:30:00.000000"}], "components": ["QA", "Server"], "created": "2014-03-26T17:35:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6e7fb48"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq4en:"}, {"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/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_25233795_*|*_1_*:*_1_*:*_2830586831_*|*_10007_*:*_2_*:*_262941679_*|*_3_*:*_2_*:*_447161148_*|*_5_*:*_1_*:*_3002008696_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_499180647"}], "description": "When you run a command like create-repo with the same \"name\" ID twice in a row, the second command fails due to a 400 error because of the database constraint.\n\nIdeally, the behavior should be to ACK (202) both requests if the commands are identical, but NACK (409, Conflict) the second request if the commands differ.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11165", "fixedVersions": ["RAZOR 0.15.0"], "id": "11165", "issueType": "Bug", "key": "RAZOR-185", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-05-12T18:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "\"Create\" commands should return different status if already exists", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:11:00.000000"}], "components": ["Client"], "created": "2014-03-26T14:20:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6cbf5cc8"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytib3:"}, {"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": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_35668227207_*|*_6_*:*_1_*:*_0"}], "description": "Once the server is able to send the client help and other information about commands, we want to render it nicely for display to the user.  That means importing some sort of reasonably portable markdown rendering tool that has console output to the client, and using it to format the text instead of just dumping it as-is.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11530", "fixedVersions": [], "id": "11530", "issueType": "Improvement", "key": "RAZOR-184", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Implement console markdown rendering for razor client", "timeSpent": "PT0S", "updated": "2015-05-13T10:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": ["Client", "QA", "Server"], "created": "2014-03-26T14:16:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2c77b946"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6wn:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_181717339_*|*_3_*:*_1_*:*_602244869_*|*_5_*:*_1_*:*_4672752479_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1622276815"}], "description": "We want to be able to send (compiled) documentation, and other information useful for validation, etc, from the server to the client about commands.\n\nWe need to define how this data is supplied, and the format that it is received in.  At the moment we know:\n\n * we want to supply an \"immediately consumable\" version of the documentation in markdown format; that is, pre-assembled as a single string, rather than components the client could assemble.\n * we want to supply data about attribute formats to the client based on validation framework data\n\nBeyond that, it isn't entirely clear what shape this should take, but given the volume (and cost) of formatting the documentation we probably don't want to include *all* this data in the command list.  Probably.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11375", "fixedVersions": ["RAZOR 0.15.0"], "id": "11375", "issueType": "Improvement", "key": "RAZOR-183", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Define, document, and implement sending data about commands to the client from the server", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/181 - 9088aca21d0bc1b818c6ade1a381fc7c62fb5f0b", "created": "2014-04-10T18:14:00.000000"}], "components": ["QA", "Server"], "created": "2014-03-26T14:11:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4b161322"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6w7:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "UX Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Major"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_1032740991_*|*_10007_*:*_1_*:*_60026048_*|*_3_*:*_2_*:*_277838285_*|*_5_*:*_1_*:*_4672761887_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1035941989"}], "description": "We need to write user-focused manpage / help style documentation for all our commands.  This should be markdown text, with a view to supplying this from the server to the client to support help output on that end.\n\nUnlike the existing API documentation, this should focus on how the command line tools would interact with the server, and user actions, not programatic details.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11055", "fixedVersions": ["RAZOR 0.15.0"], "id": "11055", "issueType": "Improvement", "key": "RAZOR-182", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Write user-focused man/help documentation for all commands", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": ["QA"], "created": "2014-03-26T14:07:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3aebbda3"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6wv:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_166323658_*|*_5_*:*_1_*:*_4672758997_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2240491251"}], "description": "Once we have defined a separate command class / DSL, the existing migration / validation code needs to be integrated smoothly into it.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11674", "fixedVersions": ["RAZOR 0.15.0"], "id": "11674", "issueType": "Improvement", "key": "RAZOR-181", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Migrate validation DSL into Command DSL", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": ["QA", "Server"], "created": "2014-03-26T14:03:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@64f1c1b7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6x3:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_176832701_*|*_5_*:*_1_*:*_4672747700_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2230226321"}], "description": "Once we have commands as a separate class they need a documentation \"DSL\" defined, to allow command level documentation to be added.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11529", "fixedVersions": ["RAZOR 0.15.0"], "id": "11529", "issueType": "Improvement", "key": "RAZOR-180", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create a documentation DSL for commands", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": ["QA", "Server"], "created": "2014-03-26T13:59:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@75efaa84"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6xz:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "13.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_72377_*|*_10007_*:*_1_*:*_69244129_*|*_3_*:*_1_*:*_97465712_*|*_5_*:*_1_*:*_4672765890_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2240501131"}], "description": "At the moment we define all our commands in the app.rb file, in a fairly procedural way.  As we grow we want to attach more metadata and behaviour to them.\n\nTo facilitate this, we want to split them out into separate classes, and integrate more DSL facilities into those.  (For example, validation and documentation DSL built into the classes.)", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11374", "fixedVersions": ["RAZOR 0.15.0"], "id": "11374", "issueType": "Improvement", "key": "RAZOR-179", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Create command \"DSL\" and separate commands into their own classes/files", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": ["QA"], "created": "2014-03-26T13:43:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3c06a057"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6yv:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_2265748_*|*_1_*:*_1_*:*_214938_*|*_3_*:*_1_*:*_7122_*|*_5_*:*_1_*:*_4672757713_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_2220735633_*|*_10006_*:*_1_*:*_185037860"}], "description": "Argument validation is somewhat haphazard right now (though not catastrophically bad because we have a lot of constraints in the DB)\n\nIt needs to become more systematic, driven off some metadata description of commands, which clients incidentally could also use to understand commands.\n\nThere are also cases where raw postgres errors are sent back to clients (e.g. when trying to create a policy with a name that is in use already)", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11164", "fixedVersions": ["RAZOR 0.15.0"], "id": "11164", "issueType": "Bug", "key": "RAZOR-178", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Better argument validation and error messages for remaining commands", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": ["QA", "Server"], "created": "2014-03-26T13:24:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ac9f0da"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6y7:"}, {"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_*:*_2491_*|*_1_*:*_1_*:*_208400_*|*_10007_*:*_1_*:*_806832_*|*_5_*:*_1_*:*_4672758319_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_2408386759"}], "description": "Occasionally one of the IPMI tests fails, reporting the content in the reverse of the order expected.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "10962", "fixedVersions": ["RAZOR 0.15.0"], "id": "10962", "issueType": "Bug", "key": "RAZOR-177", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Occasional test failure in IPMI tests", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:11:00.000000"}], "components": ["Client"], "created": "2014-03-25T11:54:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@777f5f2a"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyripj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_35763419019_*|*_6_*:*_1_*:*_0"}], "description": "The razor-client gem uses VCR to effectively \"memoize\" the results of HTTP requests against the Razor server.  This is great, because it allows the spec tests to run entirely independently of the server being present, which is the typical case.\n\nFor sanity, though, and for development purposes we should also be able to run the tests against a live server.  This allows us to both re-record existing tests, and to validate that the recorded HTTP content is correct.\n\nSadly, right now some of the tests depend on server context that they do not manage -- they assume, for example, that a node exists, but they don't actually create the node in question.\n\nThis should be fixed, by having them perform the appropriate HTTP requests to set up the environment that they expect.\n\nNotably, this may involve faking out, eg, node registration messages to the server.  That is unfortunate, but potentially necessary, to have this work correctly.\n\nThese resources / dependencies should be built as part of the spec tests using the normal before/after/around infrastructure in rspec, rather than as some separate additional step required to be run to perform spec tests against the live server.\n\nThat helps make the code self-contained, but also makes it easier to wire this in to things like our acceptance testing environment.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11054", "fixedVersions": [], "id": "11054", "issueType": "Bug", "key": "RAZOR-176", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "client spec tests do not set up their data dependencies, so fail against a real server", "timeSpent": "PT0S", "updated": "2015-05-13T10:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit 96bbc297.", "created": "2014-03-31T12:16:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Looks like this was reopened by a member of the public without any details about what attention was needed.  If this is still an issue, please file a new ticket linked to this one describing what the problem you are seeing is.", "created": "2014-05-05T16:28:00.000000"}], "components": ["Client", "QA"], "created": "2014-03-21T17:20:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d5c0d59"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6zz:"}, {"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": "31/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_705104516_*|*_1_*:*_2_*:*_1316696127_*|*_3_*:*_1_*:*_3339506_*|*_5_*:*_2_*:*_4196801140_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_1278021796"}], "description": "When authentication is turned on on the server, the simple command 'razor' issues the error 'Could not connect to the server at http://localhost:8080/api. More help is available after pointing the client to a Razor server'\n\nThe error message should tell the user that credentials are required instead.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11163", "fixedVersions": ["RAZOR 0.15.0"], "id": "11163", "issueType": "Bug", "key": "RAZOR-175", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-05T16:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client claims it can't connect to API endpoint when it gets a 401 from server", "timeSpent": "PT0S", "updated": "2014-07-28T10:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "One important aspect of this strategy in light of RAZOR-218 is that we can't get complete hw_info out of iPXE and need to use the MK to give usa full enumeration of the hw_info, in particular the MAC addresses in the machine.\n\nA corollary of that is that calls to /svc/boot from iPXE shouldn't replace hw_info wholesale", "created": "2014-05-06T12:20:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Also addressed by https://github.com/puppetlabs/razor-server/pull/212", "created": "2014-05-19T23:36:00.000000"}], "components": ["Microkernel", "QA", "Server"], "created": "2014-03-20T15:58:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4119e5b7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1ov:"}, {"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": "06/May/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_768453571_*|*_1_*:*_1_*:*_1824786803_*|*_10007_*:*_1_*:*_68741930_*|*_3_*:*_1_*:*_3386670900_*|*_5_*:*_1_*:*_1542678245_*|*_6_*:*_1_*:*_0"}], "description": "Currently, when a node boots and submits the info available during IPXE (macs and uuid) to /svc/boot, the node is either identified as an existing node and the ID of that node returned, or its not and a new node is created at that point and the new ID returned.\n\nWe have situations, particularly with blade servers which are highly integrated where failure in the hardware require the mother board to be swapped out which includes the NICs meaning that the machine gets a new set of MACs and a new UUID.  At this point the machine is \"new\" in the eyes of Razor.\n\nRazor should be able to be configured so that it does not create a new node during the /svc/boot phase but rather delay this to the first checkin performed by the MK.  At this point, the server could re-attempt to match the node using the full range of facts (which facts to use would be configurable).  At this point if the node was to match an existing node, the MACs and UUID of the node would be updated and the node rebooted.  /svc/boot would successfully match the node at this point.  If still no match could be made, the server would generate a new node and return the ID.\n\nPull request https://github.com/puppetlabs/razor-server/pull/142 implements this behaviour.  In this implementation, users would add to the configuration a configurable declaring what facts should be used to match.  If no facts are supplied, the traditional behaviour of /svc/boot creating the node prevails.  In my environment, I use facts that reveal the UUID of the disk partitions (these facts I believe eill be included in facter 2) which allows the node ID to associate to the machines data, I could essentially rebuild the machine around the data and maintain the association of the ID with the data.\n\nPull request https://github.com/puppetlabs/razor-el-mk/pull/18 on the MK repository also supports this behaviour.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11282", "fixedVersions": ["RAZOR 0.15.0"], "id": "11282", "issueType": "Improvement", "key": "RAZOR-174", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor should be able to have a second attempt to ID the node once in the MK", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I would add to this RAZOR-7, a way for users to get feedback on the commands they have submitted and that might still be in flight (or have failed)\n\nMy belief is that we need both: specific places where specific status/event information shows up, and a way to get a comprehensive view of what is happening on the server, ideally with useful ways to query/filter that. I don't feel that the various places where status shows up is a problem at all, though it could and should be expanded. To go through the four things you list above:\n\n* node log: this is the most likely candidate for absorbing into a generic event log, though having a simple way to get the events/log for a specific node seems very useful to me (e.g., when the user knows the node is doing something interesting)\n* server log: not primarily intended for the Razor user, but the administrator. Also incredibly useful as a last line of defense to call out things that the application logic fails to take into account\n* status field for repo: the question of 'is this repo ready and usable for provisioning' seems important enough to give users a specific place to look at. Also, to help coordinate create-repo/create-policy, application logic will need to use that\n* installed field for a node: again, something so important for users to justify calling it out separately, and needed to support application logic anyway\n\nAs I said, we should absolutely have a mechanism where users can look at everything that's happening on the Razor server", "created": "2014-03-20T15:15:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] is this a priority issue? It's been open quite awhile. If so, can we decompose this into specific functional tasks for execution?  ", "created": "2014-12-23T16:55:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Most of this has been addressed by various work items, most notably the /events and /commands collection. Anything beyond that should be entered in more focussed workflow-oriented tickets.", "created": "2014-12-23T17:05:00.000000"}], "components": ["Client", "DOCS", "Server"], "created": "2014-03-20T12:51:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6c3f6b52"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytelj:"}, {"fieldName": "UX Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Critical"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24038048886_*|*_6_*:*_1_*:*_0"}], "description": "A common thread in many recent issues has been communication about status and error states to the user, such as:\n\n * if a repo isn't ready, a policy that uses it should stop evaluation; the user should know why this is\n * if downloading an ISO file, or unpacking it, fails we should let the user know so they can potentially correct the situation\n * as a node progresses through installation, we should give users better insight into progress\n\nIn many of these cases we potentially want to guide users to remediation steps, too:\n * for an ISO download error, the URL may be wrong, and should be edited to correct it\n * during installation, the user may wish to cancel that install (unbind the node) etc\n\nAt the moment we have a number of different ways to communicate these things:\n * we put some information into the node log about changes that happen\n * we put some information into the server log about failure status, etc\n * we are looking to build a \"status\" field into the repo object to track status there\n * we have an \"installed\" field on nodes, which indicates part of their status info\n\nWe should find a unified mechanism to communicate this sort of information to users -- what is happening, what has gone wrong, and especially what valid actions they can take in response to this.\n\nIn a GUI environment, this is reasonably simple to communicate using pop-up notifications or a dedicated \"notification\" pane; extending that to, eg, email notifications or other push mechanisms is equally simple.\n\nOn the CLI, which we want to be equally valid as the only mechanism for interaction, we need to address how this happens -- asynchronous notifications are much harder to manage, and polling is kind of the only solution, which is actually quite annoying in many ways.\n\nWe also want to keep in mind that, eventually, it would be good to be able to unify the display of these messages -- especially conditions -- with other sources, so that a single pane of glass can manage all the systems, not just some of them.\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11373", "fixedVersions": [], "id": "11373", "issueType": "Story", "key": "RAZOR-173", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2014-12-23T17:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Effectively communicate status and error information to users", "timeSpent": "PT0S", "updated": "2015-08-13T16:30:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "From my testing, this seems to work.  Advancing to QA testing now, so that we can get independent confirmation that it does the right things\u2122.", "created": "2014-04-29T14:54:00.000000"}], "components": ["QA", "Server"], "created": "2014-03-20T12:00:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@175646e4"}, {"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|hytek7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_528137871_*|*_1_*:*_1_*:*_3466429347_*|*_5_*:*_1_*:*_3463777834_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147228779"}], "description": "Run Razor on a different port, figure out what would be affected by that and enumerate all the things that break such as the MK, or installer tasks - for them it's mostly a matter of making sure the various /svc helpers work as intended", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11477", "fixedVersions": [], "id": "11477", "issueType": "Sub-task", "key": "RAZOR-172", "labels": [], "originalEstimate": "PT0S", "parent": "11061", "parentSummary": "The port razor runs on should be configurable", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Test running Razor on a different port", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "We do not have a way to modify repo, task, or broker on an existing policy", "created": "2014-05-16T19:15:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Closing in favor of RAZOR-379.", "created": "2018-05-31T20:42:00.000000"}], "components": ["Server"], "created": "2014-03-20T11:43:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@681fe988"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-383"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyteiv:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "01/Jun/18"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_127354124555_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_5129381808"}], "description": "In order for Razor's objects to be properly manageable through Puppet code, we need attributes to be modifiable. This is a spike to see which commands do not exist that should.", "epicLinkSummary": "Razor should be manageable through Puppet", "estimate": "PT0S", "externalId": "11681", "fixedVersions": [], "id": "11681", "issueType": "Task", "key": "RAZOR-171", "labels": [], "originalEstimate": "PT0S", "parent": "11357", "parentSummary": "Razor should be manageable through Puppet", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Duplicate", "resolutionDate": "2018-05-31T20:42:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "(Spike) Determine missing commands", "timeSpent": "PT0S", "updated": "2018-05-31T20:42:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "This was unplanned work this sprint, but I do have a pull request ready to go: https://github.com/puppetlabs/razor-el-mk/pull/20\n\nIt took me the better part of the entire day digging into the guts of kickstart, livecd-creator, and livecd-iso-to-pxeboot to sort this out.  If this gets pulled into a sprint, I'd put it somewhere at a 3 to 5 or whatever maps to \"about a day, troubleshooting and all.\"\n\n-Jeff", "created": "2014-03-18T21:53:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Fixed by merge into razor-el-mk master as [c21851f|https://github.com/puppetlabs/razor-el-mk/commit/c21851f].", "created": "2014-03-20T11:13:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "(Note added this item to the sprint after the sprint had started, which perhaps I shouldn't have done.)", "created": "2014-03-20T11:24:00.000000"}], "components": ["Microkernel", "QA"], "created": "2014-03-18T21:51:00.000000", "creator": "623c12b6ee1b5a0070293582", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@13cf29ab"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysuqf:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_135215666_*|*_6_*:*_1_*:*_0"}], "description": "I noticed this while trying to produce my own microkernel for development purposed using razor-mk-el.\n\nThe microkernel fails to boot.  After much digging, I'm pretty confident this is because the current dracut package in F19 does not have the following patch applied:\n\nhttp://git.kernel.org/cgit/boot/dracut/dracut.git/commit/?id=ba9368fa4fedda0f72d84f910d01d7da201405a3\n\nIdeally this work item will be resolved once we're able to build working microkernels using the razor-mk-el repository.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "10960", "fixedVersions": [], "id": "10960", "issueType": "Bug", "key": "RAZOR-170", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12b6ee1b5a0070293582", "resolution": "Fixed", "resolutionDate": "2014-03-20T11:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Microkernels produced with razor-el-mk fail to boot", "timeSpent": "PT0S", "updated": "2014-05-15T15:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:10:00.000000"}], "components": [], "created": "2014-03-18T17:38:00.000000", "creator": "623c128750bb2b0070b6b349", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2c179229"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdq7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36347511381_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 160|https://github.com/puppetlabs/razor-server/issues/160] reported by [rickstok|https://github.com/rickstok]:_\n\nI was trying to add matcher to use dhcp_mac as a argument, because in \"fact.macaddress\" is not always the same as \"dhcp_mac\". i need this to solve the problems because it's not finding the right tags.\n\nWould be nice if this is possible\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10958", "fixedVersions": [], "id": "10958", "issueType": "Improvement", "key": "RAZOR-169", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c128750bb2b0070b6b349", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "possiblility to use \"dhcp_mac\" as a matcher for a Tag", "timeSpent": "PT0S", "updated": "2015-05-13T10:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:70121:3af0d317-2e72-4259-a669-2aa316a672f5] said:\n\n+1 I'm finding myself really wanting this right now. For my use case, it would be great to at least be able to substitute with a selection from a range of numbers, e.g. `www${40..60}` or something like that. Node ID doesn't quite cut it in the case of wanting an offset.\n\nI realize this usage in particular is probably mildly odd and perhaps somewhat narrow, but I think in general razor could benefit from hostname patterns that allow some more flexibility.", "created": "2014-03-18T17:29:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Yes, I am absolutely on board with more flexibility. The question is: how best to realize that.\n\nDaniel described his generators idea on the ML: https://groups.google.com/d/msg/puppet-razor/7tq5IZFG-Po/iHv1-uDa9NYJ I quite like this approach\n\nIt would be good to collect other ideas in this area though - for example, for having names like 'www[4-6][0-9]' it's probably overkill to require some external system that keeps track of state and makes sure assigned names are unique. OTOH, designing something where Razor enforces uniqueness and these things are supplied by Razor needs a lot more thought.", "created": "2014-03-18T17:29:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[vChrisR|https://github.com/vChrisR] said:\n\nWouldn't it be possible to let the DB takes care of the uniqueness of the\nnumbers?", "created": "2014-03-18T17:30:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Yes, absolutely - my question is mostly: what would that look like to the user ?", "created": "2014-03-18T17:30:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nSo, I have been thinking hard about this, and I am still convinced that\n\"generators\" are the answer here:\n\nA generator is a named source of data, usable in any location we support\nstring substitutions -- hostnames, addressing, passwords, etc.\n\nTwo types:\n1. built-in generators, such as \"number range\" or \"number sequence\".\n2. external generations, which are implemented by calling out to an\nexternal tool.\n\nThe basic protocol of a generator is simple, two operations:\n1. Assign value for node.\n2. Revoke value for node.\n\nWe ask for an assignment the first time the string is evaluated, and store\nthe results", "created": "2014-03-18T17:32:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:70121:3af0d317-2e72-4259-a669-2aa316a672f5] said:\n\nDaniel's generator idea sounds like a good one. I think at least for users who are stuck with stricter naming requirements it would help to have some primitives available (via the built-in generators listed above).", "created": "2014-03-18T17:32:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nYeah, my hope is that it could all be used out of the box without having to build anything on your own for \"the common cases\", regardless of quite how we implement that. Being able to take the existing generators and edit them would be good, though, so I kind of favour putting them out-of-process...", "created": "2014-03-18T17:32:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:10:00.000000"}], "components": [], "created": "2014-03-18T17:29:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@77bcc6f5"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdpr:"}, {"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": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36348055038_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 47|https://github.com/puppetlabs/razor-server/issues/47]_\n\nMake it possible to use more info about a node in a policy's hostname pattern to help people with strict naming policies.\n\nWhat exactly needs to be scoped.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11801", "fixedVersions": [], "id": "11801", "issueType": "New Feature", "key": "RAZOR-168", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "More flexible hostname patterns", "timeSpent": "PT0S", "updated": "2015-05-13T10:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nHey.  I am quite puzzled by this, because the broker very deliberately and\ncarefully uses either `yum` or `apt` to install puppet -- and OS\ndependencies should take care of all those other components.\n\nWould it be possible for you to manually install an empty node, curl the\nscript out by hand, and run it with `bash -x` on the target system, then\npastie the output or drop it in this ticket?\n\nI completely believe that it is failing for you, but I can't understand why\nor how it is, hence the request for that debugging information.  (Also, let\nme know if you need help with any of those steps. ", "created": "2014-03-18T17:22:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:450348a7-d1c8-4ffa-a22b-6af891d11205] said:\n\nHi Daniel. \n\nYou are assuming that there is a yum repo available to the client besides the one of the Puppetlabs repo\n\nBy default the packages are not installed with the installer provided here\n\nHere is the output I get after trying to run \n[root@localhost ~]# yum -y install puppet\nLoaded plugins: downloadonly, product-id, refresh-packagekit, security, subscription-manager\nThis system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.\nSetting up Install Process\nResolving Dependencies\n--> Running transaction check\n---> Package puppet.noarch 0:3.3.1-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: facter >= 1.6.11 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby-rgen >= 0.6.5 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby >= 1.8.7 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: hiera >= 1.0.0 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby-augeas for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: /usr/bin/ruby for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby-shadow for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby(selinux) for package: puppet-3.3.1-1.el6.noarch\n--> Running transaction check\n---> Package facter.x86_64 1:1.7.3-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8.5 for package: 1:facter-1.7.3-1.el6.x86_64\n--> Processing Dependency: /usr/bin/ruby for package: 1:facter-1.7.3-1.el6.x86_64\n---> Package hiera.noarch 0:1.2.1-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8.5 for package: hiera-1.2.1-1.el6.noarch\n--> Processing Dependency: ruby(abi) >= 1.8 for package: hiera-1.2.1-1.el6.noarch\n--> Processing Dependency: rubygem-json for package: hiera-1.2.1-1.el6.noarch\n---> Package puppet.noarch 0:3.3.1-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby >= 1.8.7 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: /usr/bin/ruby for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby(selinux) for package: puppet-3.3.1-1.el6.noarch\n---> Package ruby-augeas.x86_64 0:0.4.1-1.el6 will be installed\n--> Processing Dependency: ruby(abi) = 1.8 for package: ruby-augeas-0.4.1-1.el6.x86_64\n--> Processing Dependency: libruby.so.1.8()(64bit) for package: ruby-augeas-0.4.1-1.el6.x86_64\n---> Package ruby-rgen.noarch 0:0.6.5-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8 for package: ruby-rgen-0.6.5-1.el6.noarch\n---> Package ruby-shadow.x86_64 0:1.4.1-13.el6 will be installed\n--> Processing Dependency: ruby(abi) = 1.8 for package: ruby-shadow-1.4.1-13.el6.x86_64\n--> Processing Dependency: libruby.so.1.8()(64bit) for package: ruby-shadow-1.4.1-13.el6.x86_64\n--> Running transaction check\n---> Package facter.x86_64 1:1.7.3-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8.5 for package: 1:facter-1.7.3-1.el6.x86_64\n--> Processing Dependency: /usr/bin/ruby for package: 1:facter-1.7.3-1.el6.x86_64\n---> Package hiera.noarch 0:1.2.1-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8.5 for package: hiera-1.2.1-1.el6.noarch\n--> Processing Dependency: ruby(abi) >= 1.8 for package: hiera-1.2.1-1.el6.noarch\n---> Package puppet.noarch 0:3.3.1-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby >= 1.8.7 for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: /usr/bin/ruby for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: ruby(selinux) for package: puppet-3.3.1-1.el6.noarch\n---> Package ruby-augeas.x86_64 0:0.4.1-1.el6 will be installed\n--> Processing Dependency: ruby(abi) = 1.8 for package: ruby-augeas-0.4.1-1.el6.x86_64\n--> Processing Dependency: libruby.so.1.8()(64bit) for package: ruby-augeas-0.4.1-1.el6.x86_64\n---> Package ruby-rgen.noarch 0:0.6.5-1.el6 will be installed\n--> Processing Dependency: ruby >= 1.8 for package: ruby-rgen-0.6.5-1.el6.noarch\n---> Package ruby-shadow.x86_64 0:1.4.1-13.el6 will be installed\n--> Processing Dependency: ruby(abi) = 1.8 for package: ruby-shadow-1.4.1-13.el6.x86_64\n--> Processing Dependency: libruby.so.1.8()(64bit) for package: ruby-shadow-1.4.1-13.el6.x86_64\n---> Package rubygem-json.x86_64 0:1.5.5-1.el6 will be installed\n--> Processing Dependency: ruby(abi) = 1.8 for package: rubygem-json-1.5.5-1.el6.x86_64\n--> Processing Dependency: /usr/bin/ruby for package: rubygem-json-1.5.5-1.el6.x86_64\n--> Processing Dependency: rubygems for package: rubygem-json-1.5.5-1.el6.x86_64\n--> Processing Dependency: libruby.so.1.8()(64bit) for package: rubygem-json-1.5.5-1.el6.x86_64\n--> Processing Dependency: /usr/bin/ruby for package: 1:facter-1.7.3-1.el6.x86_64\n--> Processing Dependency: /usr/bin/ruby for package: puppet-3.3.1-1.el6.noarch\n--> Processing Dependency: /usr/bin/ruby for package: rubygem-json-1.5.5-1.el6.x86_64\n--> Finished Dependency Resolution\nError: Package: hiera-1.2.1-1.el6.noarch (puppetlabs-products)\n           Requires: ruby >= 1.8.5\nError: Package: rubygem-json-1.5.5-1.el6.x86_64 (puppetlabs-deps)\n           Requires: libruby.so.1.8()(64bit)\nError: Package: puppet-3.3.1-1.el6.noarch (puppetlabs-products)\n           Requires: ruby >= 1.8\nError: Package: rubygem-json-1.5.5-1.el6.x86_64 (puppetlabs-deps)\n           Requires: ruby(abi) = 1.8\nError: Package: ruby-shadow-1.4.1-13.el6.x86_64 (puppetlabs-deps)\n           Requires: libruby.so.1.8()(64bit)\nError: Package: rubygem-json-1.5.5-1.el6.x86_64 (puppetlabs-deps)\n           Requires: rubygems\nError: Package: puppet-3.3.1-1.el6.noarch (puppetlabs-products)\n           Requires: ruby(selinux)\nError: Package: 1:facter-1.7.3-1.el6.x86_64 (puppetlabs-products)\n           Requires: ruby >= 1.8.5\nError: Package: 1:facter-1.7.3-1.el6.x86_64 (puppetlabs-products)\n           Requires: /usr/bin/ruby\nError: Package: puppet-3.3.1-1.el6.noarch (puppetlabs-products)\n           Requires: ruby >= 1.8.7\nError: Package: ruby-shadow-1.4.1-13.el6.x86_64 (puppetlabs-deps)\n           Requires: ruby(abi) = 1.8\nError: Package: ruby-augeas-0.4.1-1.el6.x86_64 (puppetlabs-deps)\n           Requires: libruby.so.1.8()(64bit)\nError: Package: rubygem-json-1.5.5-1.el6.x86_64 (puppetlabs-deps)\n           Requires: /usr/bin/ruby\nError: Package: puppet-3.3.1-1.el6.noarch (puppetlabs-products)\n           Requires: /usr/bin/ruby\nError: Package: hiera-1.2.1-1.el6.noarch (puppetlabs-products)\n           Requires: ruby(abi) >= 1.8\nError: Package: ruby-rgen-0.6.5-1.el6.noarch (puppetlabs-deps)\n           Requires: ruby >= 1.8\nError: Package: ruby-augeas-0.4.1-1.el6.x86_64 (puppetlabs-deps)\n           Requires: ruby(abi) = 1.8\n You could try using --skip-broken to work around the problem\n You could try running: rpm -Va --nofiles --nodigest\n\n\nThis is running from a RHEL 6.4 installation\n\n", "created": "2014-03-18T17:22:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nOK.  I couldn't figure this out, since my code did what our installer team recommended to get FOSS Puppet installed on the node.  It turns out that [you are not alone in this](https://groups.google.com/forum/#!topic/puppet-users/ZIx9U3Ai1ww), and it is a reasonably common issue with RHEL.\n\nYou need to enable the \"optional\" channel, which includes the supported version of Ruby and so forth, which I believe is done on 6.4 this way.  If you could manually test this, that would be awesome -- I don't actually have a RHEL 6.4 license right now, and while I work on one we can hopefully shortcut this.\n\nPlease run these commands on the node where you got that failure, and let me know if it succeeds:\n\n{code}\n] yum-config-manager --enable rhel-6-server-optional-rpms\n] yum -y install puppet\n{code}\n\nIf it does, I will add that command (if present) to the broker, so that we can successfully get puppet on RHEL 6.4 machines working. :)", "created": "2014-03-18T17:23:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I think we should actually put these commands into the kickstart file itself - the issue is that after the kickstart installation the system is not properly subscribed to RHN/satellite. The missing ruby hints at that (which is in the main RHEL channel), rubygems being in optional is another issue that should also be addressed by our installer.", "created": "2014-03-18T17:23:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nbq. I think we should actually put these commands into the kickstart file itself - the issue is that after the kickstart installation the system is not properly subscribed to RHN/satellite.\n\nOh, dear.  That is bad news: that makes installing a bunch of\nunnecessary content mandatory for all users, to favour a specific\nbroker.  Can't we fix the subscription problem or something?\n\nAfter all, someone who wants to, eg, use a python based tool or a\nmanual shell script for their broker, both entirely legitimate uses,\ngets no benefit from installing Ruby during the bootstrap process.", "created": "2014-03-18T17:24:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Oh wait: my comment didn't say what I wanted it to say. What I meant to say is that the kickstart should subscribe the system to the RHEL base (and optional) channel - as things stand right now, the system won't even be set up to pull in package updates etc.\n", "created": "2014-03-18T17:24:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nOh!  Yes, I am one hundred percent behind arranging that subscription.\n That is totally awesome.\n\nCan you tell me how?  (Guess which OS family I know well.  Hint: not EL ", "created": "2014-03-18T17:24:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:450348a7-d1c8-4ffa-a22b-6af891d11205] said:\n\nI do not think that you can add the official RHEL repository without a subscription. \n", "created": "2014-03-18T17:24:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Yes, that would require that people have a valid subscription, and the username/password (or activationkey) and possibly the location of your satellite would have to become parameters you pass into the policy.\n\nSome materials about that:\n* http://projects.theforeman.org/projects/1/wiki/Kickstart\n* http://tommi.org/2012/01/kickstarting-rhel-6-1-or-newer-registering-with-subscription-manager/\n\nGetting this right would require somebody with a RHEL subscription to try out some of the suggestions there and submit a tested patch. We'd have to take care of adding config to installers as discussed on the mailing list.", "created": "2014-03-18T17:25:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Background:  When you install a RHEL system you need to enroll the system in satellite or what have before package installation will succeed.\n\nOur thinking: If we're installing actual RHEL then installation should follow RedHat guidelines, e.g. using an activation key in the kickstart configuration.", "created": "2014-03-20T12:43:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Next steps:\n\n1) Get our internal RHEL satellite subscription\n2) Enroll the system with satellite as part of the kickstart file", "created": "2015-03-06T12:49:00.000000"}], "components": ["Server"], "created": "2014-03-18T17:21:00.000000", "creator": "557058:450348a7-d1c8-4ffa-a22b-6af891d11205", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3ee600f2"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypbv3:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36348466783_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 77|https://github.com/puppetlabs/razor-server/issues/77]_\n\nThe installation of the puppet packages depends on having Ruby and Rubygems installed on the deployed node.\n\nThat is not always the case. \n\nBefore you can install puppet you will need the following packages\nruby-irb\nruby-rdoc\nruby\t\ncompat-readline5\nruby-libs\nrubygems\n\nOne way to solve this is to add the packages to the kickstart template - but that is not ideal.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11670", "fixedVersions": ["RAZOR 1.1.0"], "id": "11670", "issueType": "Bug", "key": "RAZOR-167", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:450348a7-d1c8-4ffa-a22b-6af891d11205", "resolution": "Done", "resolutionDate": "2015-05-13T10:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Puppet Broker missing Puppet dependecies", "timeSpent": "PT0S", "updated": "2015-05-13T10:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The joy of editing files with grep/sed. We ough to just install augeas and use that to make these changes.", "created": "2014-03-18T17:16:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nTempting as Augeas is, do we really have enough platform coverage to make\nit work?\n\nI would be just as happy to remove the \"file editing\" portion of this, and\nreplace it with a static template /etc/hosts file", "created": "2014-03-18T17:16:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:09:00.000000"}], "components": [], "created": "2014-03-18T17:16:00.000000", "creator": "557058:450348a7-d1c8-4ffa-a22b-6af891d11205", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@745e5437"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdpb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36348779552_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 78|https://github.com/puppetlabs/razor-server/issues/78]_\n\nAfter installation the razor_postinstall is created in the root folder. \n\nHostname is set correctly in /etc/hostname but the /etc/hosts is not updated correctly\n\nhosts file is as follows\n{code}\n127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n{code}\n\n{code}\n[root@host10 ~]# grep '^127\\.0\\.0\\.1.*' /etc/hosts-\n127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4\n{code}\nThat seems fine and is populated > /etc/hosts\n{code}\n[root@host10 ~]# grep -v '^127\\.0\\.0\\.1.*' /etc/hosts-\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n{code}\nAlso seems fine but then \n{code}\ngrep -v '^127\\.0\\.0\\.1.*' /etc/hosts- | grep '^127\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}.*' \n{code}\ncomes up empty.\n\nI guess the Regex is not correct.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11528", "fixedVersions": [], "id": "11528", "issueType": "Improvement", "key": "RAZOR-166", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:450348a7-d1c8-4ffa-a22b-6af891d11205", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor_postinstall.sh not working correctly on RHEL6", "timeSpent": "PT0S", "updated": "2015-05-13T10:09:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nI am inclined to agree with you.  It seems like we should continue to log\nand monitor broker stuff.\n\nI also filed [RAZOR-164] to make sure we eventually think about how to make the\nbroker stuff as restartable as the installation currently is.  Because that\ngoes hand-in-hand with knowing what is going on with it. :)", "created": "2014-03-18T17:04:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "There's nothing that keeps broker scripts from logging additional information via log_url (or store stuff)\n\nThe big question to me is: should we explicitly introduce some sort of state flag in the nodes ? And if so, what should they be ? Or is it enough to have a convention that brokers log something to indicate that they succeeded ?\n\nI agree with Maish that the satge_done_url(\"finished\") is misleading - it should really just indicate that the post_install stage has finished, and should probably be changed to something like stage_done_url(\"os_complete\") to make that clearer.", "created": "2014-03-18T17:04:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nI think yes, we should have a convention for this.  It would make it much\neasier to have notifications to third party systems that can trigger\nmeaningful workflows if there is a well known state name.", "created": "2014-03-18T17:05:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Per RAZOR-357 the broker now logs when it has completed.", "created": "2015-05-13T10:05:00.000000"}], "components": ["Server"], "created": "2014-03-18T17:03:00.000000", "creator": "557058:450348a7-d1c8-4ffa-a22b-6af891d11205", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7a643291"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdp3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36349364049_*|*_5_*:*_1_*:*_4090_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 86|https://github.com/puppetlabs/razor-server/issues/86]_\n\nAt the moment a deployment is reported as finished after the ip address reported as part of the node installation - with this\n\n{code}\n<%= render_template(\"store_ip\") %>\n\n<%= render_template(\"os_complete\") %>\n\n# Send final state\ncurl -s <%= stage_done_url(\"finished\") %>\n{code}\n\nThe node is then passed over to a broker (either noop or puppet). But from then onwards razor has no knowledge of what happened to the the node. \n\nI think the continuation of the logging and reporting process should be extended until after the process has completed - i.e. the broker handoff has succeeded/failed (and the commands that are executed because of it).\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11140", "fixedVersions": [], "id": "11140", "issueType": "Improvement", "key": "RAZOR-165", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:450348a7-d1c8-4ffa-a22b-6af891d11205", "resolution": "Done", "resolutionDate": "2015-05-13T10:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "When should a run be reported as finished", "timeSpent": "PT0S", "updated": "2015-05-13T10:06:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[virtualswede|https://github.com/virtualswede] said:\n\nHow about something like this?\n\n1. OS installed, and reporting back via an API call\n2. Based on the broker setup, the response of that API call can be new code to be executed (kinda like what's happening now, right?)\n3. If failed, rerun that API call for a set amount of times, if all fails, reboot, and remove from deployed servers which will add it back to the available server pool\n\nCould be a start?", "created": "2014-03-18T16:58:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nYeah.  My off-the-cuff thought on flow is to effectively \"split\" the broker\nstuff.  Implement some sort of \"per platform\" common broker thing that\ninstalls on the OS and knows enough to download the real broker code and\nrun it.\n\nThat way we can split responsibility for \"run this reliably\" and the actual\ncode that gets run.  (Like I want to split the current MK ISO client to do\nthe same thing -- boot image only downloads and runs code, the actual\nclient code comes from the server only.)\n\nThe devil is in the details. ", "created": "2014-03-18T16:59:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The download of the broker script is not unique in that respect: for most installers, horrible things will happen if the node loses network connection to the server during installation. We won't be able to make all those cases robust by retrying individual downloads - I think a better approach would be to make it easier to spot instances with stuck installations. For that, we'd need at a minimum the timestamp of when the node was bound to a policy plus an indication whether installation finished (including broker handoff) In the future that information could be used to automatically reboot stuck nodes, alert admins of that etc.", "created": "2014-03-18T16:59:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nThere is definitely some sense in that -- bring up an alert for a node that\nhas not moved for long enough.  That certainly lets human action attend to\nthe problem...", "created": "2014-03-18T16:59:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:04:00.000000"}], "components": ["Server"], "created": "2014-03-18T16:58:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@71471a89"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdon:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36349593469_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 89|https://github.com/puppetlabs/razor-server/issues/89]_\n\nRight now broker handoff is done by having the installed put some code on the target system (or fetch it at first boot) that will try and do the broker magic.  This is great, but we need to make that robust -- and ideally more robust than \"try each time you reboot\", unless we go ahead and automatically reboot each time.\n\nI don't know how best to make this reliable, though.  That is step one in solving this problem.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10957", "fixedVersions": [], "id": "10957", "issueType": "Improvement", "key": "RAZOR-164", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Make broker hand-off reliable, somehow", "timeSpent": "PT0S", "updated": "2015-05-13T10:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[eglute|https://github.com/eglute] said:\n\nHi Daniel, can you explain a little more how this would work?\n\nThanks, Egle\n", "created": "2014-03-18T16:53:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nA few users had the same sort of problem: they had \"broker\" style work that\nwasn't triggered on the newly installed system, it ran somewhere else.\n (Both in addition to, and instead of, work done on the target system.)\n\nFor example, send a message via your AMQP broker that triggers a\npre-defined VMWare workflow in their management tools to do things to your\nnewly provisioned VM.  ...or, say, sign certificates to authenticate your\nclient, or something.\n\nThe aim is to solve that problem.  The implementation?  I am inclined to\nprovide a way to have a script or something executed locally, and give you\nthe node ID on the command line.  You can query data out of the Razor API\nto learn whatever else you want to know in order to do your job.\n\nBeyond that... I honestly don't know.  This was to make sure we captured\nthe need, and to invite people to talk about what they wanted to do.\n\nWould that model work for you?  What do you need to do anyhow?", "created": "2014-03-18T16:53:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[vChrisR|https://github.com/vChrisR] said:\n\nI would love the ability to run an .rb file and executables. This would open up a lot of possibilities.\nStill thinking about the best way to implement this in the API. one way could be that one GET from the client downloads the script to install an agent (if available) and then run the local part of the broker. \n\nMaybe the most flexible way to do it is having 3 API calls available: one just runs the install script, another one runs the local code and a third one runs both in a predefined order.", "created": "2014-03-18T16:54:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The idea behind brokers is that they should be fairly decoupled from installers, i.e. the broker should be completely in control of what happens when the client says 'I am done installing, broker, take this node over'\n\nTo me, the behavior should solely depend on the broker - if it has an 'install.erb', that gets sent back to the node, if it has some sort of executable script associated with it, that gets run, if both are there, both get run. If users should have greater control over that, I'd do that through the broker's configuration so that users can set it in the policy.", "created": "2014-03-18T16:54:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:04:00.000000"}], "components": ["Server"], "created": "2014-03-18T16:52:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1d8f005e"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdof:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36349911705_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 92|https://github.com/puppetlabs/razor-server/issues/92]_\n\nWe should have an ability to run broker stuff on the razor-server instance, not just the client.\n\nWe plan to support running it \"concurrently\", which is to say, when the installer triggers the broker hand-off we will execute the server-side thing.\n\nThis can augment, or replace, the client-side stuff.\n\nIt should support external executables; \"in process\" stuff is probably not a good idea, because third party code.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11923", "fixedVersions": [], "id": "11923", "issueType": "Improvement", "key": "RAZOR-163", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add \"server side broker\" script support", "timeSpent": "PT0S", "updated": "2015-05-13T10:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This would be compatibility breaking, and isn't necessary.", "created": "2014-04-30T11:51:00.000000"}], "components": ["Server"], "created": "2014-03-18T16:49:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@413dcdbb"}, {"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|hytdo7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3697293916_*|*_6_*:*_1_*:*_0"}], "description": "In the document we return from {{/api}} for users to navigate through, we currently return an object with the key {{id}} containing the URL to follow for that content.\n\nThis isn't the most sensible name; we should probably use {{href}} or something similar, which indicates more clearly what the actual purpose is.\n\nFor compatibility we should also ship, but not document, the {{id}} key with the same data -- so that older client navigation works.  Eventually that can be scrapped, but probably not for quite some months.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11800", "fixedVersions": [], "id": "11800", "issueType": "Improvement", "key": "RAZOR-162", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2014-04-30T11:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "`/api` uses `id` as the name of the URL to follow; probably should use `href` or something", "timeSpent": "PT0S", "updated": "2014-04-30T11:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:04:00.000000"}], "components": [], "created": "2014-03-18T16:48:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@16a78efa"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdnz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36350124240_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 97|https://github.com/puppetlabs/razor-server/issues/97]_\n\nThis would be most convenient during testing.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11680", "fixedVersions": [], "id": "11680", "issueType": "Bug", "key": "RAZOR-161", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Allow environment variables for setting the database connection details", "timeSpent": "PT0S", "updated": "2015-05-13T10:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I get similar errors when I run 'LC_ALL=de_DE rake spec:all'\n\nIt seems to me we need to do two things: (1) check on server startup somehow that we are operating under a UTF-8 locale and (2) change spec_helper.rb so that it sets the locale to some UTF-8 locale very early on\n", "created": "2014-03-18T16:47:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:03:00.000000"}], "components": [], "created": "2014-03-18T16:46:00.000000", "creator": "623c12047910a200718b9434", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3b166aab"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdnr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36350226491_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 102|https://github.com/puppetlabs/razor-server/issues/102]_\n\nIf I run the tests (JRUBY_OPTS='--debug' rspec -fd spec) with my env locale set to en_AU I get a lot of the following:\n\n{code}\n     Razor::Data::Repo name with whitespace (\\u1680) in PostgreSQL should be rejected at the start\n     Failure/Error: expect {\n       expected Sequel::CheckConstraintViolation but nothing was raised\n     # ./spec/data/repo_spec.rb:86:in `(root)'\n{code}\n\nand\n\n{code}\n     Razor::Data::Repo name statistical validation with prng: 126298209285267305564934456462977111802 accept all legal characters: string \"\\u{1802 1745 df0 e35 1869 1988 ad7 219 1cd7 fcf 1a96 1f19 24ec d4c d0 18d2 1243 442 2214 1fdd 2212 20ef 188e abb 2445 bc3 235b 1145 19e0 101f 51e 220f}\"\n     Failure/Error: Repo.new(:iso_url => 'file:///', :name => string).save.should be_valid\n     Encoding::CompatibilityError:\n       incompatible encoding regexp match (UTF-8 regexp with ISO-8859-1 string)\n     # ./lib/razor/data/repo.rb:45:in `validate'\n     # ./spec/data/repo_spec.rb:169:in `(root)'\n{code}\n\nUpdating the env to a UTF-8 locale:\n{code}\n    export LC_ALL=en_AU.UTF-8\n{code}\nresolves the issue and the tests no longer fail.\n\nCan JRUBY or Razor force itself to run a UTF-8 encoding to match the DB?\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11668", "fixedVersions": [], "id": "11668", "issueType": "Improvement", "key": "RAZOR-160", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12047910a200718b9434", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Many test failures due to locale settings", "timeSpent": "PT0S", "updated": "2015-05-13T10:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nI am presently working on IPMI support, and I am inclined to agree: being able to reboot nodes using IPMI would be excellent. I am more reluctant to implement SSH support since it isn't OS-portable or assured, but we could consider it for later. (...or accept patches ", "created": "2014-03-18T16:41:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:03:00.000000"}], "components": ["Server"], "created": "2014-03-18T16:40:00.000000", "creator": "623c128750bb2b0070b6b349", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6a7f7974"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdnj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36350594845_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 106|https://github.com/puppetlabs/razor-server/issues/106] reported by [thomast74|https://github.com/thomast74]:_\n\nDeleting a policy should, via an option, unbind all nodes and reboot them.\nThese nodes would boot into microkernel again and the nodes are ready for a new assignment.\n\nDoing this via IPMI is a possible option. The other option would be doing it via ssh and the known root password which is part of the policy.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11527", "fixedVersions": [], "id": "11527", "issueType": "Improvement", "key": "RAZOR-159", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c128750bb2b0070b6b349", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Deleting a policy should allow via option the reboot the nodes", "timeSpent": "PT0S", "updated": "2015-05-13T10:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "Concern: Automatic migration is complicated in a HA environment.\n\nThinking: Automatic migration is less friendly to the user than explicitly letting them know they need to migration and how to do so.", "created": "2014-03-20T12:39:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Unfortunately, this is made over-complicated by the error handling in the client that treats any error while setting up help text as a connection failure, and hides the actual failure cause.  This will require a client upgrade to be functional.", "created": "2014-04-11T12:32:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/182 - 46d745b6b8f84cd2f1d7328079e93de70bf11b3f", "created": "2014-04-11T13:57:00.000000"}], "components": ["QA", "Server"], "created": "2014-03-18T16:27:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c68517a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq71r:"}, {"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/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_2055602287_*|*_10007_*:*_1_*:*_251022503_*|*_3_*:*_1_*:*_9029326_*|*_5_*:*_1_*:*_4672719942_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 110|https://github.com/puppetlabs/razor-server/issues/110]:_\n\nAt the moment the result of forgetting to migrate your database is this error:\n\n{code}\nJBWEB000065: HTTP Status 500 - org.jruby.exceptions.RaiseException: (DatabaseError) Java::OrgPostgresqlUtil::PSQLException: ERROR: relation \"sequel_constraint_validations\" does not exist\n{code}\n\nThis is accurate as all get-out, but not exactly helpful.  We should include a high level error filter and dolly that up with some hints like \"you should run `razor-admin migrate-database` to fix this problem, because it will fix it right up; we didn't migrate ourselves automatically because ${reasons}\".\n\n...or just migrate automatically ourselves.  (Also, we should check if migrations are current and do something reasonable in the situation that we don't match the on-disk migrations, like politely 500 everything with clear instructions.)", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11281", "fixedVersions": ["RAZOR 0.15.0"], "id": "11281", "issueType": "Bug", "key": "RAZOR-158", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Improve error UX: give direction when the user failed to migrate", "timeSpent": "PT0S", "updated": "2014-07-28T10:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nIt would be a huge help if you could give more detail on some of your concrete needs. For example, why do you need to know if the node is install or broker hand-off?", "created": "2014-03-18T16:20:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[eglute|https://github.com/eglute] said:\n\nI need to track the progress of each node and be able to tell where they are.", "created": "2014-03-18T16:20:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[bunchc|https://github.com/bunchc] said:\n\n\n\nI'm late to the game here, so I'm not entirely sure what has been discussed elsewhere. Is the assumption that Razor is the single source of truth regarding a nodes status? e.g. we're not relying on an external CMDB? In either case, I think having a way to track where in the process a node is, as well as what nodes are in a given 'state' at a given time can be quite helpful.\n\ne.g. I've promised a customer a 2h server build SLA. I plug the new server into their rack, throw it into razor... and 1h45m later, the box isn't yet online. OH NOES! Ideally I would poll razor, say, hey man... what's up, and he'd tell me about where things are, without having to DRAC in and see if the windows install is hung on updates or so.\n\nI think that can be done with what's in the Google groups thread. \"Did we complete $x\" and then having a document that describes said process & values of $x.\n\nWhere this falls apart, and where a 'state' machine (or a robust history of states) can be useful, is in auditing and attesting to the provenance of a node as it is turned over between builds. Additionally, it would be useful for razor to know if an OS install failed, and what to do on next reboot (or broker handoff fail, or MK said hello, but facts were corrupt, etc).\n", "created": "2014-03-18T16:21:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:623c12047910a200718b9434] said:\n\n\n\nHave a look at [PR 117|https://github.com/puppetlabs/razor-server/pull/117]. It allows arbitrary metadata to be stored on a node. This also works within installers that can curl web addresses. E.g. in my rhel6 installers, kickstart %pre sclript, the first thing it does is update the 'state' metadata value to 'kickstart_started', and then in in the %post script updates it again to 'kickstart_complete'.\n\nWould that cover this case?\n", "created": "2014-03-18T16:22:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[bunchc|https://github.com/bunchc] said:\n\nIt could indeed, however there are a number of bits where it could fall apart:\n\n* Being optional, it likely wont be implemented by all installers\n* It doesn't seem to include a history (that may not be the case, however). Say I've got a box that only gets so far a number of times, or so... I'd like to be able to track that.\n* Missing known states. A set of known values can keep us from guessing at the meaning, say if the person building ubuntu's installer has his states set differently.\n\nThat said, it could likely be implemented via the mechanism described, and a set of strong standards on what goes into the 'state' metadata.\n", "created": "2014-03-18T16:24:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:623c12047910a200718b9434] said:\n\nIndeed it would be optional for the installers to include it, but doing so should be fairly trivial if a user were to come across one that didnt do it or they wanted to add some granularity. Copying an installer and tweaking it for my environment's needs was really simple. Ultimately I'm pretty sure that the sort of granular status reporting your after is going to have to be fed back from the installer ultimately.\n\nAlso, there is the node log. Log entries can be submitted arbitrarily from within installers and storing metadata is also logged. This might give you the history you require.\n\nUltimately, metadata is meant to be endlessly flexible. There are virtually no restrictions on the keys or their values and can be used for many things. In fact, I've solved about 3 of my use case requirements with them (1 intentionally, the other 2 were a fluke). That aside, I'd be reluctant to try to prescribe what the valid states should be as they may vary wildly depending on what the task is. E.g. 'kickstart_started' would not apply to ubuntu. But the 'state' values for any particular installer need not be vague and should be fairly intuitive to anyone familiar with the installation of whatever the installer is installing.\n", "created": "2014-03-18T16:24:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:03:00.000000"}], "components": ["Server"], "created": "2014-03-18T16:19:00.000000", "creator": "623c128750bb2b0070b6b349", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@315f"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyridj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36351833146_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 115|https://github.com/puppetlabs/razor-server/issues/115] reported by [eglute|https://github.com/eglute]:_\n\nAs discussed in this thread, the ability to track node state is needed:\n\nhttps://groups.google.com/forum/#!topic/puppet-razor/oqf-L4Qej2Q\n\nI would like to know at what state is the node at any given point, whether it is install, broker hand off or anything else. Also, if there is a failure, I would like to know at what point did it fail, what succeeded, and whether it can recovered from the failure, and if so, possibly have some things in the documentation on how to recover from different failures.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11138", "fixedVersions": [], "id": "11138", "issueType": "Bug", "key": "RAZOR-157", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c128750bb2b0070b6b349", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add ability to track node state", "timeSpent": "PT0S", "updated": "2015-05-13T10:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nOne of the debates I had with @lutter was about supporting these API defined installers. Can you explain why you preferred that to building one on disk? That would be very interesting to me.\n\nOtherwise this seems a likely analysis.\n", "created": "2014-03-18T16:11:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:70121:3af0d317-2e72-4259-a669-2aa316a672f5] said:\n\nI chose to use the API because I was already using the API for other interactions as part of a puppet type I'm writing. To skirt around this issue I threw my installers on the filesystem and things work like a charm, but it wasn't clear to me to what degree API-created installers were supported", "created": "2014-03-18T16:12:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:07:00.000000"}], "components": ["Server"], "created": "2014-03-18T16:11:00.000000", "creator": "70121:3af0d317-2e72-4259-a669-2aa316a672f5", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3d73f35d"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdmn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36352587383_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 120|https://github.com/puppetlabs/razor-server/issues/120]:_\n\nI'm working with an installer that I've created through the API and I can't convince my nodes to boot using the template defined for boot 1 in the boot_seq, even though the node's boot_count is 1. I think this is because installers added via the API get serialized in the database via JSON, which turns int keys into strings. This case is explicitly dealt with in app.rb:512 when the installer is created, but I don't think this is handled again when the JSON blob is retrieved from the database; manual inspection of the installer's row corroborates this bug report. ", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11922", "fixedVersions": [], "id": "11922", "issueType": "Bug", "key": "RAZOR-156", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "70121:3af0d317-2e72-4259-a669-2aa316a672f5", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Installers in the database don't deserialize boot_seq keys correctly", "timeSpent": "PT0S", "updated": "2015-05-13T10:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\nWould you generally prefer this to be access controlled and only exposed to users who have the right to read it -- or that it was somehow encrypted in the database and the plain text was not accessible?\n\nWould it be sufficient to allow you to supply a pre-crypted value and have the installer do the right thing\u2122 with that?", "created": "2014-03-18T16:05:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[eglute|https://github.com/eglute] said:\n\nI am not sure what the best security practices are, any PCI/other compliance experts around?\n\nDefinitely access controlled, and as a default, not display plain text password when viewing node details. Maybe show the password only when \"show password\" flag is passed?\n\nI would like to go with the best practices\u2122 in this case, whatever that might be.\n\nIf I am correct, storing plain text passwords is bad, but i do not know how to get around it for razor.\n", "created": "2014-03-18T16:06:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:70121:3af0d317-2e72-4259-a669-2aa316a672f5] said:\n\n+1 for storing pre-crypted passwords. I've been circumventing the root_password storage entirely and just keeping the 'real' crypts elsewhere...", "created": "2014-03-18T16:06:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I find this whole business of the policy storing a password highly irritating", "created": "2014-03-18T16:07:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] said:\n\n{quote}\n    There is nothing though that keeps you from storing crypted passwords in a policy's 'password' entry \n    (assuming your OS installer can handle crypted passwords)\n{quote}\n\nFor the ESXi installer, I actually went through and wrote specific support for crypted or plain-text passwords. It allows you to put either in the policy, but always sends a crypted password over the wire. If folks want to add this, that is probably a good place to start for porting that to other installers.\n", "created": "2014-03-18T16:08:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-13T10:02:00.000000"}, {"author": "557058:df44868c-ccf5-4b35-84e1-fe2a4297bc59", "body": "Hi [~accountid:557058:e484fb55-2ddc-43a0-968e-11d70ae3153c], if this is closed, does this mean this feature will never get introduced or just not for the next release? Very curious as this is relatively important for some of our larger enterprise customers with security constrained environments where they explicitly failed an audit due to this feature not being available.", "created": "2015-05-14T08:55:00.000000"}], "components": ["Server"], "created": "2014-03-18T16:03:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@20d3a3b7"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytdmf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36352776310_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 121|https://github.com/puppetlabs/razor-client/issues/121] by [eglute|https://github.com/eglute]:_\n\nCurrently, when viewing node information, password is displayed in plain text:\n\nhostname: \"host60\"\nroot_password: \"secret\"\nip_address: \"\"\n\nThis needs to be changed to something a little more secure.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11799", "fixedVersions": [], "id": "11799", "issueType": "Bug", "key": "RAZOR-155", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T10:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Plain text password displayed", "timeSpent": "PT0S", "updated": "2015-05-14T08:55:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "While we're at it, we should then also rename the file for the task metadata to 'metadata.yaml', i.e. tasks/some_os.task/metadata.yaml\n\nWhen we do this, what is the upgrade story ? At a bare minimum, we need to document that.", "created": "2014-03-18T14:29:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] \u2014 I have modified the description to reflect the \"metadata.yaml\" suggestion.\n\nAs for the upgrade story, it should just consist of renaming/moving tasks/templates. I will write this up as part of this issue and report back via comment on this issue when it is complete.", "created": "2014-03-18T17:44:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "IMO, the upgrade story should be \"fix what we ship, document it for users.\"  Trying to automate this will end in tears, because it is a potentially complex change, and getting it wrong could break things.  Better to just tell users we will not support their tasks.\n\nWith the rename do \"${name}.task\" for tasks, though, our failure mode for a non-migrated user supplied task would be \"task is missing, policy fails\", which stops evaluation, and so fails safe -- do nothing.", "created": "2014-03-19T10:01:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Added DOCS to ticket for documentation of the upgrade path. The code will point the user to this documentation in an error message if the upgrade was skipped.", "created": "2014-03-24T14:59:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Here's what the user should do to upgrade:\n# Create \"tasks/<name>.task\" folder.\n# Move \"tasks/<name>.yaml\" file to \"tasks/<name>.task/metadata.yaml\"\n# Move templates from \"tasks/<name>\\[/<os_version>\\]\" to \"tasks/<name>.task\"\n#- Note that templates could've previously been in either folder \"tasks/<name>\" or in folder \"tasks/<name>/<os_version>\". Now, they need to be in the \"tasks/<name>.task\" folder (or the \"tasks/common\" folder).\n# If empty, folder \"tasks/<name>\" can be removed.", "created": "2014-03-24T15:47:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Things we talked about in planning related to docs:  Idea of creating a creating a wiki page as a temporary docs location, create a links.puppetlabs.com resource to point at the temporary location, embed the referral link in the code, and update the link with the final docs location in the future.", "created": "2014-03-26T10:39:00.000000"}], "components": ["DOCS", "QA", "Server"], "created": "2014-03-18T14:09:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3ecd01e5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6xb:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_1987525_*|*_1_*:*_2_*:*_511963637_*|*_3_*:*_1_*:*_359216947_*|*_5_*:*_1_*:*_4672757221_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_2224746091"}], "description": "The scheme for finding templates within a task should be:\n{code}\ntasks/<name>.task/<filename>\n{code}\nThe task itself must be named:\n{code}\ntasks/<name>.task/metadata.yaml\n{code}\nThe change is fourfold:\n# Remove os_version from path.\n# Add .task to folder name.\n# Allow <name> to contain \"/\" to indicate subfolders.\n#- This is mostly relevant for derived tasks referencing a base task.\n# Require task filename be \"metadata.yaml\".\n\nThe problem that sparked this (RAZOR-117) was due to inheritance because parent tasks are specified by \"name\", not \"name\" + \"os_version\". Thus, the required os_version subdirectory is unnecessary. The \"name\" should be sufficiently qualified instead.", "duedate": "2014-03-26T00:00:00.000000", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11667", "fixedVersions": ["RAZOR 0.15.0"], "id": "11667", "issueType": "Improvement", "key": "RAZOR-154", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Revamping template- and task-path", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "623e7ac27910a200718cd181", "created": "2014-03-17T13:08:00.000000", "name": "Dribble", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10286"}], "comments": [{"author": "557058:923149f8-040e-4296-b279-cbc5b8a6aa98", "body": "[~accountid:623e7ac27910a200718cd181], I'm sorry about this. I missed this ticket in the FORGE project and didn't triage it. \n\n[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629], is this the right place for the ticket?", "created": "2014-06-17T16:56:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Yes, this is the right place, thanks.", "created": "2014-06-17T17:06:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "I believe this has been resolved.", "created": "2015-05-13T10:07:00.000000"}], "components": [], "created": "2014-03-17T13:08:00.000000", "creator": "623e7ac27910a200718cd181", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@29c4367"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytcz3:"}, {"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": "17/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_2_*:*_8897908058_*|*_6_*:*_1_*:*_0"}], "description": "I suspect you guys may have fixed this for pe-puppet. (Although, I didn't see razor as a supported module for pe.) The current forge module wants to\ninstall vs 0.11.0 of razor-server and the current version of razor-server is up to\n0.14.1. So, I suspect a new forge module is likely in the works.\n\nmanifest for client contains only:\n\nnode <nodename> {\n   include razor\n}\n\ntorquebox install fails:\n\nerr: /Stage[main]/Razor::Torquebox/Exec[install torquebox binary distribution to /opt/razor-torquebox]/returns: change from notrun to 0 failed: #!/bin/sh\n\n<snip>\n\n returned 2 instead of one of [0] at /etc/puppet/environments/development/modules/razor/manifests/torquebox.pp:14\n\nI'd be happy to debug the script that it's attempting to run, but there's no point if you've already fixed this in an upcoming release of the module.\n\n", "environment": "Puppet  Master - Ubuntu 12.04.4 Server (Puppet 3.4.3) \nRazor Server (client) - Ubuntu 12.04.4 (Puppet 2.7.11)\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11678", "fixedVersions": [], "id": "11678", "issueType": "Bug", "key": "RAZOR-303", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623e7ac27910a200718cd181", "resolution": "Done", "resolutionDate": "2015-05-13T10:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "puppetlabs-razor modules fails to install on Open Source Puppet Client", "timeSpent": "PT0S", "updated": "2015-05-13T10:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "What specific documentation are you looking for here, [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91], and where do you want it documented?", "created": "2014-04-14T17:29:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "This was fixed in commit 13df3a48 on 3/14", "created": "2014-04-21T12:52:00.000000"}], "components": ["DOCS", "Server"], "created": "2014-03-13T17:45:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5c987fdc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq70v:"}, {"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/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2763855448_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_588157910"}], "description": "Razor::Data::Node.search allows searching the nodes collection, but it's not documented", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11526", "fixedVersions": ["RAZOR 0.15.0"], "id": "11526", "issueType": "Task", "key": "RAZOR-153", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-04-21T12:52:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Document querying the nodes collection", "timeSpent": "PT0S", "updated": "2014-05-09T11:23:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "Concern: This configuration setting may be very dangerous for the end user so we'd like to be as considerate as possible regarding documentation and potential consequences of changing this configuration setting.", "created": "2014-03-20T12:37:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/185 - 0.14.1-69-g79ecb75", "created": "2014-04-14T16:51:00.000000"}], "components": ["DOCS", "QA"], "created": "2014-03-11T17:36:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2444837a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq70f:"}, {"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": "20/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_251472912_*|*_1_*:*_1_*:*_2933219661_*|*_10007_*:*_1_*:*_332898980_*|*_3_*:*_1_*:*_1660109_*|*_5_*:*_1_*:*_4672763380_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_171011439"}], "description": "Razor's nodes carry a 'installed' flag that indicates whether the node should be sent through the policy table and therefore possibly reinstalled when it boots.\n\nAdding a configuration setting that marks all newly discovered nodes as 'installed' makes it possible to bring Razor into an environment with already installed machines, even if they are not fully known, and is safe for the user, as nodes will only be (re)installed after the user cleared the 'installed' flag using the 'reinstall-node' command", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "10956", "fixedVersions": ["RAZOR 0.15.0"], "id": "10956", "issueType": "Improvement", "key": "RAZOR-152", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add a configuration setting to consider new nodes 'installed'", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "A couple of questions about this stand out:\n\nDo we need to support more than one node registered per command?  It seems like that adds a lot of complexity (eg: partial failure modes) that isn't present in a \"one node per command\" model.\n\nDo we want to enforce the requirement that \"facts must be sufficiently complete\", or just allow the user to throw whatever they want in and document that they need to make sure of that?\n\nFinally, have we determined the behaviour when the node already exists?  To that effect, how do we define \"already exists\" in this case?  Matches an existing node record using our matching rules?", "created": "2014-04-14T17:28:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Let me try and answer these:\n\n> Do we need to support more than one node registered per command?\n\nI agree that multiple make errors etc. more complex", "created": "2014-04-14T18:23:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "In the end I elected that this should behave exactly like node registration does: if the node matches an existing node, it will simply return the node, as a success.  This is partly to preserve the common behaviour of \"declare desired state, not action to be taken\", and partly because the infrastructure around nodes doesn't make it reasonable to distinguish that without substantially more effort overall.", "created": "2014-04-15T12:59:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/187 - 6c07bf409d6e4c4ec993cfe78822341cca18348c", "created": "2014-04-15T14:30:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "updated to 337e47b2ab74f4c55e2dd7661fcdbd37dba10686", "created": "2014-04-15T17:04:00.000000"}], "components": ["QA", "Server"], "created": "2014-03-11T17:30:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@308f36b4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq707:"}, {"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": "14/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_251461840_*|*_1_*:*_1_*:*_2937330735_*|*_10007_*:*_1_*:*_254954586_*|*_3_*:*_2_*:*_14376307_*|*_5_*:*_1_*:*_4672764072_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_171031161_*|*_10004_*:*_1_*:*_61502583"}], "description": "One way to make brownfield deployments of Razor easier is to allow users to register nodes explicitly. The register-nodes call would take an array of node-like objects and add them as known nodes to the Razor database. Each node object would minimally look something like\n\n    {\n       'facts': { ... facts about the node ... },\n       'installed': true|false\n    }\n\nThe facts do not need to be complete, but have to contain enough information so that the node can be identified when it boots; most commonly, this means that the facts will have to contain at least one MAC address for the node. The 'installed' flag indicates whether the node contains something the user wishes to preserve or whether it's eligible for going through the policy table.\n\nThe response should contain, for each created node, a link to the node object. The behavior when an existing node is mentioned in register-nodes is TBD.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11921", "fixedVersions": ["RAZOR 0.15.0"], "id": "11921", "issueType": "Improvement", "key": "RAZOR-151", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add a register-nodes command", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "Background information: It's a nail-bitter when setting up Razor in an existing environment because existing systems may be wiped out.\n\nThis is the main issue we'd like to address, reduce the anxiety.", "created": "2014-03-20T12:18:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Open question:  Do we make this configurable, or why wouldn't we make this configurable?\n\nDaniel: Making this configurable makes Razor have two very different modes which increase complexity.  These are the mode where nodes are not installed by defaults and the mode where they are.", "created": "2014-03-20T12:23:00.000000"}], "components": [], "created": "2014-03-11T17:24:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@564f660f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytbfr:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "0.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3691639717_*|*_5_*:*_1_*:*_4672107541_*|*_6_*:*_1_*:*_0"}], "description": "Bringing Razor into an existing environment is a somewhat delicate task, as Razor might reinstall nodes that it has never seen before, even if they have something useful installed from the user's POV.\n\nThere are various ways in which this can be achieved:\n* if users have complete knowledge of their environment, they could explicitly register nodes and mark them as installed/precious (RAZOR-151)\n* new nodes could generally be considered installed/precious until a user manually makes them eligible for reinstall (RAZOR-152)\n* users could, through clever use of tag rules and node metadata, require some explicit action before a node could be reinstalled (though this is most likely pretty fragile)", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11665", "fixedVersions": ["RAZOR 0.15.0"], "id": "11665", "issueType": "Story", "key": "RAZOR-150", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Brownfield deployments of Razor", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "Background information:  David's basic idea is that we punt a lot of this to the database and implement database level replication.\n\nThis seems like something we need to have a bigger discussion.", "created": "2014-03-20T12:16:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Proposal: Hash this out via email.", "created": "2014-03-20T12:16:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "I haven't seen HA in any roadmap plans for Razor through the next year. Closing this ticket in anticipation of it being a lower priority than other efforts. If this is incorrect, please re-open, and we can prioritize accordingly.", "created": "2014-12-23T17:56:00.000000"}], "components": [], "created": "2014-03-11T17:20:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@485ce5e2"}, {"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|hyriov:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24802571894_*|*_6_*:*_1_*:*_0"}], "description": "At a minimum, we need to come up with some recommendations on how to set Razor up for high availability. For the most part, there isn't all that much to do, as Razor is a fairly standard web application.\n\nRazor HA breaks down into\n* HA setup of PostgreSQL\n* multiple Razor servers\n* redundant LB's fronting those servers\n\nThe one fly in the ointment are our background jobs and use of HornetQ; there we need to figure out the right setup", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11136", "fixedVersions": [], "id": "11136", "issueType": "Story", "key": "RAZOR-149", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2014-12-23T17:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "High availability for the Razor server", "timeSpent": "PT0S", "updated": "2014-12-23T17:56:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "Background information:  Database-backed tasks will hopefully be nice for HA setups where file based tasks will be difficult.  However, in the simple (non-HA) scenario, file based tasks may be easier for the end user to work with.\n\nDaniel: File based tasks aren't necessarily a problem for HA setups if we include a tool or some mechanism to synchronize multiple razor servers.  Daniel's proposal is to treat this problem the same way we treat repositories.  Database replication may not be a complete solution in and of itself.", "created": "2014-03-20T12:11:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Daniel: It seems like we'll need some level of application level synchronization regardless of if we use database replication or not because the database does not have enough application-level insight to resolve conflicts.", "created": "2014-03-20T12:13:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T18:05:00.000000"}], "components": ["Server"], "created": "2014-03-11T16:39:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@12444a6b"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hytbcn:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "1.0"}, {"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": "20/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36897944178_*|*_6_*:*_1_*:*_0"}], "description": "At the moment we support both database and file back tasks.  This sounded like a good idea when we implemented it, but in practice nobody cares about the database tasks, and they are just added complication.\n\nWe should strip them out and only support file base tasks.\n\nFor now, API around creating tasks, etc, is off the table -- that can be done out of band by an admin.  Should we ever need it we can assess the security policy around it, and figure out how to create the files needed on disk through an API call.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11134", "fixedVersions": [], "id": "11134", "issueType": "Improvement", "key": "RAZOR-148", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T18:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Remove database-backed tasks, replace them with files on disk only", "timeSpent": "PT0S", "updated": "2015-05-12T18:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df] thoughts on CLI implications / consistency? ", "created": "2016-03-02T16:40:00.000000"}, {"author": "557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df", "body": "This is a fine idea. [~accountid:557058:8f42986f-ed50-423c-b565-8f949032296c], what are other keys you might want to use to reference a node? If the set is relatively small and fixed, I think reducing the number of characters would be preferable. For example {{razor node --dns_name postgres02}}, {{razor node --ip 192.168.0.2}}.", "created": "2016-03-03T02:18:00.000000"}, {"author": "70121:cd9d858d-837a-4a32-a973-735d6f7e075f", "body": "I would like to up-vote this feature request and add some thoughts:\n* Having the ability to filter by hostname, mac address, and ip would be useful\n* However, instead of limiting to certain keys, it would be ideal if we could filter nodes by any fact and also by any of the custom metadata that we've assigned.  In our environment, such metadata includes hostname and then some other data specific to how we're using razor.  For instance, we add metadata to a node to tell it how big /opt should be, what RHN activation key it should have, along with what build it should get (the latter is used in tags and dictates the policy and ultimately the task that is used).  This  metadata is read in by the kickstart to appropriately size the partition and register with Satellite using the appropriate RHN key for the build.  In our case, the hostname we set with `update-node-metadata` is the hostname that the machine gets (not the hostname derived by the policy).  So, the ability to filter by any node metadata when querying razor for nodes would be ideal.  \n``razor node --metadata hostname postgres02``  \n``razor node --fact mac 00:50:25:ab:bc:cd``\n", "created": "2017-02-13T14:27:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This ability already exists on the server, but it's not exposed in the CLI currently:\n{code:java}\n$ curl -k https://razor.server:8151/api/collections/nodes?hostname=3\n{\"spec\":\"http://api.puppetlabs.com/razor/v1/collections/nodes\",\"items\":[{\"spec\":\"http://api.puppetlabs.com/razor/v1/collections/nodes/member\",\"id\":\"https://razor.server:8151/api/collections/nodes/node3\",\"name\":\"node3\"}],\"total\":1} {code}\nI think it would be helpful to query the nodes collection with something like this:\n{code:java}\nrazor nodes --hostname 3 {code}\nI also think it might be useful to have an --inline argument to this collection, so this would be possible:\n{code:java}\nrazor delete-node --name `razor nodes --hostname 3 --inline` {code}\nThe Node.search method, called by that query to /collections/nodes\u00a0currently does not allow for finding by IP", "created": "2018-03-12T14:33:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This ticket needs a more technical definition/design before we move forward, marking \"Accepted\" for now.", "created": "2018-05-31T20:38:00.000000"}], "components": ["Client", "Server"], "created": "2014-03-11T03:24:00.000000", "creator": "623e7812a1d81f0069da2248", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3948c9a4"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyk3xu:o"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/16"}], "description": "Currently when a  node is provisioned by razor in order to refer to that node with the razor client you must use the razor node name, e.g. node01.\n\nThis may not reflect the name of the node once provisioned. It would be very useful to be able to refer to a node using it's DNS name for example. Razor supports storing metadata about a node it would be great if we could leverage this to refer to nodes with the razor client. I feel this is important as for example node08 may end up installing a machine that is actually used as postgres02. The name of the server postgres02 is far more meaningful to the user than razor node08. As such performing actions in razor after a machine is installed requires the user to work out what the razor node name is. \n\nIt could perhaps look something like the following, the idea being each of these would return the same information.\n\nrazor node node08\nrazor node --dns_name postgres02\nrazor node --ip 192.168.0.2\n\nIn a wider sense this could potentially be something like what mcollective offers for provisioned nodes.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11279", "fixedVersions": [], "id": "11279", "issueType": "New Feature", "key": "RAZOR-147", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623e7812a1d81f0069da2248", "status": "Accepted", "statusCategory": "To Do", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Refer to nodes not just by razor node name", "timeSpent": "PT0S", "updated": "2021-12-08T02:47:00.000000", "votes": "3", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c15a6562ab90069f8b53e", "body": "Import is done from razor:/tmp/xx.iso", "created": "2014-03-10T14:11:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T18:04:00.000000"}], "components": [], "created": "2014-03-08T02:53:00.000000", "creator": "623c15a6562ab90069f8b53e", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@27c040f8"}, {"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": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyta7r:"}, {"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": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_37203055894_*|*_6_*:*_1_*:*_0"}], "description": "Hello,\nI build a razor demo on my macbook with rhel6. For create-repo i was not able to import the content in to the repo without disable selinux. Razor also need disable selinux like pxe. I think this are a missing police on the repo location that would be solve this. Everything else from razor is working with selinux enabled. Razor brings me to a new thinking about devices.\nThomas", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11663", "fixedVersions": [], "id": "11663", "issueType": "Improvement", "key": "RAZOR-146", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c15a6562ab90069f8b53e", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T18:04:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "disable selinux for razor server for create repo", "timeSpent": "PT0S", "updated": "2015-05-12T18:04:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623c12b6ee1b5a0070293582", "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "I've got a microkernel built using the changes in my [razor_145_dmidecode|https://github.com/jeffmccune/razor-el-mk/tree/razor_145_dmidecode] branch.\n\nI'm going to try and boot this kernel to verify that facts have actually gotten better.", "created": "2014-03-17T12:59:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Hi, [~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] [~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91]\n\nDo you happen to know what facts are missing?  I looked at RAZOR-42 and dug a little deeper, but couldn't find anything beyond mention of the {{lshw}} facts in RAZOR-49. I ask because it looks like the current version of the microkernel already contains the {{dmidecode}} executable.  I've setup a razor server and am using the microkernel at http://links.puppetlabs.com/razor-microkernel-latest.tar which is {{microkernel-004.tar}} with {{SHA1(microkernel-004.tar)= 47a457a4e16be5e8781e30dbd921617c470c51ae}}.\n\nI can boot the kernel, and I get the following results from {{dmidecode}} after logging in with {{root}} and {{thincrust}}.\n\n{code}\n# which dmidecode\n/sbin/dmidecode\n# facter --version\n1.7.4\n{code}\n\nI'm running into this other issue where the microkernel doesn't seem to be getting a DHCP address when it boots Fedora 19, instead getting {{192.168.15.128}}.  I need to look into this more.", "created": "2014-03-17T18:11:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "I moved {{/sbin/dmidecode}} out of the way.  Comparing facter with {{dmidecode}} to without, the following facts require dmidecode.\n\n{code}\n--- facts2.yaml\t2014-03-17 11:27:24.399996823 -0700\n+++ facts1.yaml\t2014-03-17 11:27:24.398996822 -0700\n@@ -1,4 +1,7 @@\n ---\n architecture: x86_64\n+bios_release_date: 07/02/2012\n+bios_vendor: Phoenix Technologies LTD\n+bios_version: '6.00'\n blockdevice_sda_model: VMware Virtual S\n blockdevice_sda_size: 21474836480\n@@ -8,4 +11,7 @@\n blockdevice_sr0_vendor: NECVMWar\n blockdevices: sda,sr0\n+boardmanufacturer: Intel Corporation\n+boardproductname: 440BX Desktop Reference Platform\n+boardserialnumber: None\n domain: localdomain\n facterversion: 1.7.4\n@@ -27,6 +33,7 @@\n macaddress: 00:50:56:37:fb:5e\n macaddress_ens33: 00:50:56:37:fb:5e\n memoryfree: 884.28 MB\n memoryfree_mb: '884.28'\n+manufacturer: VMware, Inc.\n memorysize: 987.88 MB\n memorysize_mb: '987.88'\n@@ -45,8 +52,10 @@\n processor0: Intel(R) Core(TM) i7-3720QM CPU @ 2.60GHz\n processorcount: '1'\n+productname: VMware Virtual Platform\n ps: ps -ef\n rubysitedir: /usr/local/share/ruby/site_ruby/\n rubyversion: 2.0.0\n selinux: 'false'\n+serialnumber: VMware-56 4d 48 88 a7 a9 bd 30-ff c1 ce 4a 4e 02 79 a5\n swapfree: 0.00 MB\n swapfree_mb: '0.00'\n@@ -54,8 +63,10 @@\n swapsize_mb: '0.00'\n timezone: UTC\n+type: Other\n uniqueid: 007f0100\n uptime: 0:51 hours\n uptime_days: 0\n uptime_hours: 0\n uptime_seconds: 3095\n+uuid: 564D4888-A7A9-BD30-FFC1-CE4A4E0279A5\n virtual: vmware\n{code}", "created": "2014-03-17T19:30:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Moving to functional review because I think dmidecode is already in the microkernel image.", "created": "2014-03-17T20:25:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This is completed.", "created": "2014-03-18T11:20:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] Even though {{dmidecode}} is present in the 004 release of the microkernel, I submitted pull request https://github.com/puppetlabs/razor-el-mk/pull/19 in an effort to explicitly capture and express the dependency.  Hopefully this will ensure we don't accidentally remove dmidecode support in the future.", "created": "2014-03-18T12:44:00.000000"}], "components": ["Microkernel"], "created": "2014-03-06T12:09:00.000000", "creator": "623c12b6ee1b5a0070293582", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3acb1ce"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysuq7:"}, {"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": "18/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_976533503_*|*_10009_*:*_1_*:*_53743498_*|*_6_*:*_1_*:*_0"}], "description": "This makes it possible for facter to report DMI information", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11524", "fixedVersions": ["RAZOR 0.14.0"], "id": "11524", "issueType": "New Feature", "key": "RAZOR-145", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c12b6ee1b5a0070293582", "resolution": "Fixed", "resolutionDate": "2014-03-18T11:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add dmidecode to Microkernel", "timeSpent": "PT0S", "updated": "2014-03-18T12:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "There are actually multiple errors being reported when there is really only one problem with the tag. That makes the error message confusing. [fact, _] can return multiple types of values, and -- currently -- one error message is generated for each one.\n\nI think these errors should really be consolidated into a single message that indicates the single problematic clause.\n\nPotential wording: \"could return incompatible datatype(s) from function 'fact' ([String, TrueClass, FalseClass, NilClass]). Function '>=' expects '[Numeric]'\"\n\nOpen to feedback.\n\nEDIT: Fixed wording to be more consistent with other errors in matcher.rb.", "created": "2014-03-05T17:43:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "I think your intuition is correct there: it should only generate one error for one input problem.\n\nThe wording, and validation, should probably use \"JSON\" terms rather than Ruby class names, but that is likely a different issue", "created": "2014-03-06T16:19:00.000000"}], "components": ["QA", "Server"], "created": "2014-02-27T11:57:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@b8247b5"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq71j:"}, {"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": "06/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_708436201_*|*_10007_*:*_1_*:*_55839_*|*_5_*:*_1_*:*_4672762953_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_4035323512"}], "description": "When I do this\n{code}\nrazor create-tag --name small --rule '[\">=\", [\"fact\", \"processorcount\"], 1]'\n{code}\nI get the error message\n{code}\nError from doing POST http://razor:8080/api/commands/create-tag\n400 Bad Request\nmatcher attempts to return values of type String from fact, but only [Numeric] are allowed, matcher attempts to return values of type TrueClass from fact, but only [Numeric] are allowed, matcher attempts to return values of type FalseClass from fact, but only [Numeric] are allowed, matcher attempts to return values of type NilClass from fact, but only [Numeric] are allowed\n{code}\n\nwhich doesn't tell me at all what is wrong with that rule. The stacktrace in the server's log isn't terribly helpful, either, as it ends with something like\n{code}\n/home/lutter/.rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/seque\nl-4.3.0/lib/sequel/model/base.rb:1301:in `save'\n/home/lutter/.rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/seque\nl-4.3.0/lib/sequel/model/base.rb:148:in `create'\n/home/lutter/code/razor-server/lib/razor/data/tag.rb:93:in `find_or_crea\nte_with_rule'\n/home/lutter/code/razor-server/app.rb:748:in `App'\n{code}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11051", "fixedVersions": ["RAZOR 0.15.0"], "id": "11051", "issueType": "Improvement", "key": "RAZOR-144", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Confusing error message creating a rule", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I don't see any harm whatsoever in allowing an optional policy -> task association in addition to a mandatory repo -> task association, and in fact think it might be quite useful to allow people to tailor tasks for specific purposes.\n", "created": "2014-04-01T12:18:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Also, there's no guaranteed automatic migration path from policy -> task to policy -> repo -> task", "created": "2014-04-01T12:24:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Should the relationship be policy -> task -> repo.  And it be a many-to-one task-to-repo?", "created": "2014-04-05T00:39:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Although, tasks not being a DB item, not sure how that would work\n", "created": "2014-04-05T00:40:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Perhaps the task yaml could define the repo, but that would break the stock tasks.  Personally, i dont think inferring the task on a policy via a repo is intuitive.  I guess I expect my policies to trigger a task and for that task to know how to get its stuff.\n\nPerhaps, repos, could have an extra field that is an array of tasks it is associated with.  This would also allow for multiple repos for a task.  E.g, in our rhel6 kickstart, I add a few extra repo declarations for things like updates, supplementary and our in house packages.\n\nThis would also allow for a single repo to be used by multiple tasks.  It would also allow a policy to assign a task rather than a repo which I think is more in line with the way people think. ", "created": "2014-04-05T00:52:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The way it is implemented now, the repo -> task association sets a default for that repo - if you don't specify another task when you create a policy using that repo, that's the task you get", "created": "2014-04-07T12:08:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Ahhh I hadnt realised that the association had been implemented.  I was looking at slightly out of date code.\n\nI know i mentioned this on IRC and on the comments of my update-repo PR.  But what might be the implications of changing the task on a repo that is in use on policies which do not specify a task in relation to machines that have already been deployed by the policy?", "created": "2014-04-07T15:39:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "For posterity: This issue was fixed in commit b22a423.", "created": "2014-04-07T16:47:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:623c12047910a200718b9434] for machines that have already been installed (i.e. that have their 'installed' flag set) there won't be any repercussions if you change the task assigned to the policy. There is of course the danger that you modify a policy while a node is installing against it, in which case all bets are off.", "created": "2014-04-08T17:26:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Just to summarise the brief conversation I had with David yesterday on IRC...\n\nI suggested that the relationship of policies applying tasks should be maintained and that repos should be assigned to tasks as a resource used in the application of that task.  This could be done with a task array field on the repo DB entry.  As a by-product, this would allow for multiple repos to be available to a task - or none which may be appropriate on some tasks (eg noop).\n\nWhat I think is important is that the logical action of a policy binding to a node triggers a task and so it should be presented to the user in this way.  Implemented the way above, the repo can then be completely removed from the policy definition.", "created": "2014-04-08T23:52:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] documentation work here is to make sure that docs for create-repo mention that 'task' is a new mandatory parameter", "created": "2014-05-05T16:42:00.000000"}], "components": ["DOCS", "QA", "Server"], "created": "2014-02-19T18:26:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f0fc7d6"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6zj:"}, {"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": "01/Apr/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_356152192_*|*_1_*:*_1_*:*_3446479756_*|*_10007_*:*_1_*:*_142210397_*|*_3_*:*_2_*:*_189611559_*|*_5_*:*_1_*:*_4672757876_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1277206472"}], "description": "At the moment the only relationship between repo and installer objects in Razor is through a policy.  This is kind of crazy-indirect, since the installer and the repo content are pretty intimately related and, in general, the only reason to try and indirect their relationship would be if a repository could be used to install several different OS versions *and* those were implemented as multiple installation tasks.\n\nWe should fix this by:\n\n1. Adding a relationship from repo to installer.\n2. Removing the installer from policy.\n3. Using a migration to move the data about.\n\n[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] noted that users may want to have a custom installation task for, eg, advanced kickstart editing; I am uncertain this would ever coexist with the stock installer, or even if it did, that the space saving of having one repo instead of two is worth it.\n\nWe should decide if we want to support, eg, policy overriding repo for which installer to use before we finish this bug fix.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11796", "fixedVersions": ["RAZOR 0.15.0"], "id": "11796", "issueType": "Improvement", "key": "RAZOR-143", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "relating repo and installer via policy is wrong, should be repo => installer direct", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Here's my $.02: I would interpret 'reboot-node' as 'make sure node is running, after having been rebooted'. As such, reboot-node should power a powered-off node on. If the enforced power state is 'off', it should flip the enforced power state to 'on'.", "created": "2014-02-19T12:23:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Duplicate of RAZOR-138", "created": "2014-04-11T11:25:00.000000"}], "components": ["Server"], "created": "2014-02-19T12:01:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@206bd08"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq71b:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "2.0"}, {"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/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4400670730_*|*_6_*:*_1_*:*_0"}], "description": "At the moment the IPMI reboot-node command will fail if the target is powered off, at least on our test hardware.  We should make it a little more predictable by powering on the node in those circumstances, so that the \"effect\" is that you boot through the firmware regardless of initial state.\n\nIt might be worth considering interactions of this imperative operation with enforced power state, too, to see if we should either fail in an incoherent state, or update the enforced state, in consequence.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11476", "fixedVersions": [], "id": "11476", "issueType": "Bug", "key": "RAZOR-142", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Duplicate", "resolutionDate": "2014-04-11T11:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "the \"reset-node\" command fails on a node that is shut down, while it should power it up", "timeSpent": "PT0S", "updated": "2014-04-11T11:25:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [{"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2014-02-18T12:26:00.000000", "name": "SvcBootTesting.scala", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10196"}, {"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2014-02-18T12:28:00.000000", "name": "SvcBootTesting.scala", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10212"}], "comments": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Overwriting attachment", "created": "2014-02-18T12:28:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Note that the description assumes the razor server service is running on localhost:8080. This can be modified in the SvcBootTesting.scala file.", "created": "2014-02-18T12:36:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T18:03:00.000000"}], "components": ["Server"], "created": "2014-02-18T12:08:00.000000", "creator": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7ac9d083"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyt36n:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_38724902649_*|*_6_*:*_1_*:*_0"}], "description": "While hitting the /svc/boot endpoint with 500 simultaneous requests via Gatling for stress testing, this issue arose causing some failed operations. Steps to reproduce are below, followed by the stacktrace generated on the server:\n\n# [Download|http://goo.gl/2vCZbe] and unzip Gatling.\n# Move SvcBootTesting.scala (attached to this issue) to \"user-files/simulations\" inside unzipped package. This file hits \"/svc/boot?mac=####\" with random numbers.\n# Run bin/gatling.sh.\n## Select SvcBootTesting as the simulation.\n## Choose anything for simulation ID and run description.\n# Some connection exceptions appear in the client's console.\n# View server logs to see stacktrace below.\n\n{code}\n15:47:26,224 INFO  [razor.web.api] (http-/0.0.0.0:8080-423) Sequel::PoolTimeout - Sequel::PoolTimeout:\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sequel-4.3.0/lib/sequel/connection_pool/threaded.rb:100:in `hold'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sequel-4.3.0/lib/sequel/connection_pool/threaded.rb:93:in `hold'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sequel-4.3.0/lib/sequel/database/connecting.rb:234:in `synchronize'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sequel-4.3.0/lib/sequel/database/transactions.rb:86:in `transaction'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sequel-4.3.0/lib/sequel/model/base.rb:1763:in `checked_transaction'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sequel-4.3.0/lib/sequel/model/base.rb:1305:in `save'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sequel-4.3.0/lib/sequel/model/base.rb:1751:in `checked_save_failure'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sequel-4.3.0/lib/sequel/model/base.rb:1305:in `save'\n/Users/smcclellan/IdeaProjects/razor/razor-server/app.rb:334:in `HEAD /svc/boot'\norg/jruby/RubyMethod.java:124:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:1593:in `compile!'\norg/jruby/RubyProc.java:271:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:957:in `route!'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:976:in `route_eval'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:957:in `route!'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:997:in `process_route'\norg/jruby/RubyKernel.java:1284:in `catch'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:995:in `process_route'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:955:in `route!'\norg/jruby/RubyArray.java:1613:in `each'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:954:in `route!'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:1067:in `dispatch!'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:1049:in `invoke'\norg/jruby/RubyKernel.java:1284:in `catch'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:1049:in `invoke'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:1064:in `dispatch!'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:889:in `call!'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:1049:in `invoke'\norg/jruby/RubyKernel.java:1284:in `catch'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:1049:in `invoke'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:889:in `call!'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:877:in `call'\n/Users/smcclellan/IdeaProjects/razor/razor-server/lib/razor/middleware/auth.rb:47:in `call'\n/Users/smcclellan/IdeaProjects/razor/razor-server/lib/razor/middleware/auth.rb:45:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-1.5.2/lib/rack/commonlogger.rb:33:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:217:in `call'\n/Users/smcclellan/IdeaProjects/razor/razor-server/lib/razor/middleware/logger.rb:12:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-protection-1.5.1/lib/rack/protection/xss_header.rb:18:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-protection-1.5.1/lib/rack/protection/path_traversal.rb:16:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-protection-1.5.1/lib/rack/protection/json_csrf.rb:18:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-protection-1.5.1/lib/rack/protection/base.rb:50:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-protection-1.5.1/lib/rack/protection/base.rb:50:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-protection-1.5.1/lib/rack/protection/frame_options.rb:31:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-1.5.2/lib/rack/nulllogger.rb:9:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/rack-1.5.2/lib/rack/head.rb:11:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:180:in `call'\n/opt/boxen/rbenv/versions/jruby-1.7.8/lib/ruby/gems/shared/gems/sinatra-1.4.4/lib/sinatra/base.rb:2004:in `call'\n{code}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10954", "fixedVersions": [], "id": "10954", "issueType": "Bug", "key": "RAZOR-141", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T18:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Sequel::PoolTimeout error during heavy simultaneous web service calls", "timeSpent": "PT0S", "updated": "2015-05-12T18:03:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:6fc1f430-f771-4686-a97e-21c5e35f9100", "body": "Specifically once my virtualbox pxe boots and attempts to download the microkernel in 4.3.6 it just hangs at 0%.  Downgraded to 4.2.22 and the microkernel can download without issue.  \n", "created": "2014-02-11T15:07:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Added note to section called \"Install PE in Your Virtual Environment\" in the Install section.", "created": "2014-02-11T15:15:00.000000"}], "components": ["DOCS"], "created": "2014-02-11T14:48:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2ba57f7d"}, {"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|hyszkf:"}, {"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_*:*_1594527_*|*_5_*:*_1_*:*_10787114347_*|*_6_*:*_1_*:*_0"}], "description": "[~accountid:557058:6fc1f430-f771-4686-a97e-21c5e35f9100] discovered that Razor will not work with VirtualBox 4.3.6 on Mac OS X. Razor does work fine with VirtualBox 4.2.22. Not sure what to do with this information other than document it.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11794", "fixedVersions": [], "id": "11794", "issueType": "Bug", "key": "RAZOR-140", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Trivial", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-02-11T15:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor Does not Work with VirtualBox 4.3.6 on Mac OS X", "timeSpent": "PT0S", "updated": "2014-06-19T12:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "I removed this from blocking the preview, but we should attend to it at some point.", "created": "2014-02-10T12:17:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T18:02:00.000000"}], "components": ["Client"], "created": "2014-02-10T12:00:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@565bcd4a"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysyvj:"}, {"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_*:*_39416541455_*|*_6_*:*_1_*:*_0"}], "description": "If a user has enabled basic authentication on the server and uses the environmental variable \"RAZOR_API\" to store the credentials, everytime they run a razor command the client will display the password in the header:\n\n{panel}From http://ryan:password@centos6-1.vm:8080/api/collections/nodes: {panel}\n\nNot really that big of a deal since the password is stored plain text in the environmental variable.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10925", "fixedVersions": [], "id": "10925", "issueType": "Improvement", "key": "RAZOR-139", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Trivial", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T18:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Hide Password on Client when Running with Authentication ", "timeSpent": "PT0S", "updated": "2015-05-12T18:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "The relevant log section is this:\n{code}\n11:18:00,569 INFO  [razor.messaging.sequel] (Thread-1386 (HornetQ-client-global-threads-1743849578)) retry message ID:e659816c-926e-11e3-bffc-973231b13b54 after 1.02: executing [\"ipmitool\", \"-I\", \"lanplus\", \"-H\", \"razor-testing2.oob.puppetlabs.net\", \"-U\", \"ADMIN\", \"-f\", \"/tmp/ipmitool-password20140210-9490-1w2xrxq\", \"power\", \"cycle\"] failed: #<Process::WaitThread:0x2e81325c>\nSet Chassis Power Control to Cycle failed: Command not supported in present state\n{code}\n\nI almost closed this as \"working as designed\", but I am not sure.  I almost feel like the correct error handling for the specific failure mode is that we check the power state of the node and, if it is powered off, switch it on.  Asking to \"reboot\" a node that is turned off feels like it should result in a running node that starts from the firmware boot sequence -- and \"switch on\", or \"switch off, then on\" both achieve that.\n\nThoughts?", "created": "2014-02-10T12:20:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "As long as it is documented I think the feature of turning on a machine that is off with the \"reboot-node\" command would be nice. If others agree then changing this ticket from bug to improvement would make sense. ", "created": "2014-02-10T12:30:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "This should be resolved - estimate is for verifying it is fixed.", "created": "2014-03-06T13:22:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Appears fixed from my testing.  Throwing to QA for further testing on additional hardware.", "created": "2014-04-11T11:24:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] in the future can you assign [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0] anytime you move a ticket to \"Ready for Test\"? It makes it easy for him to know what needs to be verified.", "created": "2014-04-11T11:59:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "I am blocked from verifying this ticket by RAZOR-194. Still finding a way to work around the install bug. Will update if I can find out something new.", "created": "2014-04-11T12:15:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] the command help/api.md should mention that for powered-off nodes, reboot-node amounts to powering it on.", "created": "2014-05-05T16:49:00.000000"}], "components": ["DOCS", "QA", "Server"], "created": "2014-02-10T11:36:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4f804736"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq713:"}, {"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_*:*_5179630491_*|*_5_*:*_1_*:*_4672758992_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1034207474"}], "description": "h1. Description\n\nIf a user attempts to issue the \"reboot-node\" command to a node that is already powered-off, the Razor server till continually attempt to reboot the node. (See logs)\n\nI would expect that if the first attempt failed then to stop trying.\n\nh2. Attachments\n\n* Razor logs\n\nh2. Repro Steps\n\n# Install and configure a Razor server.\n# Install the Razor client on the Razor server.\n# Create a repo.\n# Create a PE broker.\n# Create a policy that wraps the given repo and broker.\n# Register a node with the Razor server.\n# Set IPMI credentials for the registered node.\n# Power-off registered node.\n# Execute the following command to reboot the node:\n{panel}razor reboot-node --name <NODE_NAME>{panel}\n\nh2. Expect\n\nThe Razor server should report a failure to reboot the node one time.\n\nh2. Actual\n\nThe Razor server keeps attempting to reboot the node on a periodic basis. If the node is eventually powered-on it will get rebooted which is kind of pointless.", "environment": "PE Version: 3.2.0-rc0-1206-gd8d46cc\nRazor Version: 0.14.1\nMaster: 8GB RAM - CentOS 6.4 x64\nRazor Server: 8GB RAM - CentOS 6.4 x64\nNode: 8GB RAM - CentOS 6.4 x64\n\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11661", "fixedVersions": ["RAZOR 0.15.0"], "id": "11661", "issueType": "Bug", "key": "RAZOR-138", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Reboot of Powered-off Node Results in Continued Attempts to Reboot", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [{"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2014-04-17T17:32:00.000000", "name": "standalone-old.xml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10183"}, {"attacher": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "created": "2014-04-17T17:32:00.000000", "name": "standalone.xml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10197"}], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Investigating this, the default behaviour for a HornetQ connection is that it will never try to reconnect to the server, it will simply fail if a timeout occurs.  I assume this signals to the application layer that a failure occurred, with the expectation that the application layer may take whatever remedial action is required.\n\nTorqueBox doesn't do anything about this.  So, my best guess -- and just a guess -- is that we fail, signal the app, the app ignores it, and bam, the client never recovers.  A restart triggers queue processing again, and everything works as expected, so no data loss, just a failure to recover when we theoretically could have.\n\nReading the torquebox-messaging code, I think it will inherit the settings from the default in-vm connection factory, or the XA in-vm connection factory, so we can do this:\n\n{code:xml}\n                <jms-connection-factories>\n                    <connection-factory name=\"InVmConnectionFactory\">\n                        <connectors>\n                            <connector-ref connector-name=\"in-vm\"/>\n                        </connectors>\n                        <entries>\n                            <entry name=\"java:/ConnectionFactory\"/>\n                        </entries>\n                        <consumer-window-size>1</consumer-window-size>\n                        <retry-interval>1000</retry-interval>\n                        <retry-interval-multiplier>1.5</retry-interval-multiplier>\n                        <max-retry-interval>60000</max-retry-interval>\n                        <reconnect-attempts>-1</reconnect-attempts>\n                    </connection-factory>\n{code}\n\nThe important part is the {{reconnect-attempts}} value: that defaults to 0, with -1 being \"forever\", and anything else being \"eventually give up\".  If the application / torquebox layer handled this sanely we would benefit from a limit, because there are failure modes such as \"HornetQ server/service crash\" that we would detect then, but it doesn't, so {{-1}}, or \"just keep trying forever on the client side\" makes the most sense.\n\nThis goes into the TorqueBox/JBoss configuration, incidentally.  Right now we just use the defaults in {{standalone.xml}} shipped with JBoss, but we should start fixing that, I guess.", "created": "2014-02-07T13:48:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This is the upstream documentation for the most recent version", "created": "2014-02-07T13:49:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Jeff M points out that time jumps at the start of daylight savings", "created": "2014-02-25T14:31:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Clever point", "created": "2014-02-26T11:52:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This will be implemented in the packages for torquebox.", "created": "2014-04-14T17:30:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "A few questions on this, per [~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629]'s comment:\n- Implementation: Which package(s) in the `torquebox.rb` does this affect? It seems like `messaging:` is relevant, but in reading the [documentation|http://torquebox.org/documentation/3.0.1/messaging.html], it doesn't mention the `reconnect-attempts` property. From what I can guess, it might look something like this:\n{code}\nqueue '/queues/razor/sequel-instance-messages' do\n    processor Razor::Messaging::Sequel do\n      ...\n      config do\n        reconnect_attempts -1\n      end\n    end\n  end\n{code}\n- Verification: What's the best way to verify that the property was read correctly and that the change solves the issue?", "created": "2014-04-16T13:37:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I have verified that [~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629]'s XML change works. I have attached the correct (standalone.xml) and current (standalone-old.xml) files to this issue. Here is the diff between them:\n\n{code}\n$ diff standalone.xml standalone-old.xml \n218,221d217\n<                         <retry-interval>1000</retry-interval>\n<                         <retry-interval-multiplier>1.5</retry-interval-multiplier>\n<                         <max-retry-interval>60000</max-retry-interval>\n<                         <reconnect-attempts>-1</reconnect-attempts>\n233,236d228\n<                         <retry-interval>1000</retry-interval>\n<                         <retry-interval-multiplier>1.5</retry-interval-multiplier>\n<                         <max-retry-interval>60000</max-retry-interval>\n<                         <reconnect-attempts>-1</reconnect-attempts>\n246,249d237\n<                         <retry-interval>1000</retry-interval>\n<                         <retry-interval-multiplier>1.5</retry-interval-multiplier>\n<                         <max-retry-interval>60000</max-retry-interval>\n<                         <reconnect-attempts>-1</reconnect-attempts>\n{code}\n\nI verified that this works by running the [Vagrant setup|https://github.com/npwalker/pe-razor-vagrant-stack] on the razor-server with a valid ISO in /tmp/iso named boot.iso:\n{code}\nrazor create-repo --name fed1 --iso-url file:///tmp/iso/boot.iso\nsudo ls -al /opt/puppet/var/razor/repo\n# Verify the unpacked file has unpacked.\n\nsudo date -s \"2 OCT 2014 18:00:00\" # Anything far in the future works\n\nrazor create-repo --name fed2 --iso-url file:///tmp/iso/boot.iso\nsudo ls -al /opt/puppet/var/razor/repo\n# Unpacks with the fix in this issue, otherwise fails\n{code}", "created": "2014-04-17T17:32:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629]: Now that I've verified that adding those lines fixes the problem, I'll assign this to you to bundle the modified standalone.xml that we should ship in Torquebox.", "created": "2014-04-18T10:54:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-torquebox/pull/1 - 4327647f4f15fd1f3e2c2c4f928c6cc454b5e11d", "created": "2014-04-18T12:01:00.000000"}], "components": ["QA"], "created": "2014-02-07T13:36:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6c8aec21"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq5yn:"}, {"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": "07/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_520719563_*|*_1_*:*_2_*:*_5711085976_*|*_10007_*:*_1_*:*_968144109_*|*_3_*:*_3_*:*_167317049_*|*_5_*:*_1_*:*_3463782303_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147254509_*|*_10006_*:*_1_*:*_160329837"}], "description": "When the server's time jumps by a large amount (e.g., by pausing the VM running the server for several hours) the HornetQ server dies and no attempt is made to restart it. This leads, amongst other things, to pending create-repo requests to never finish. The only remediation right now is to restart the Razor server.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11277", "fixedVersions": ["RAZOR 0.15.0"], "id": "11277", "issueType": "Bug", "key": "RAZOR-136", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "HornetQ server dies and does not restart when time jumps", "timeSpent": "PT0S", "updated": "2015-07-20T13:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "623e7ac8562ab90069f9ed9b", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:623e7ac8562ab90069f9ed9b] please let us know if we should address this for Milestone 2 or later", "created": "2014-03-06T09:50:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I've added a few simple additions to make brownfield deployment of Razor somewhat tenable, but we should still figure out what the fuller story here is.", "created": "2014-03-12T11:08:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The 'register-node' command and the 'protect_new_nodes' config setting give us enough coverage for brownfield deployments for now.", "created": "2014-06-13T12:02:00.000000"}], "components": [], "created": "2014-02-06T11:28:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@201a6dcd"}, {"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|hysxe7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2413314912_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_8557925467"}], "description": "Most users already have existing physical environments, provisioned in a variety of ways. Starting to use Razor in such an environment today is, to say the least, difficult.\n\nIssues to address here are things like\n* I already have provisioned machines and want to enroll them with Razor so that in the future I can reprovision them more easily. Razor should recognize these machines, but not modify them\n* Similar to above, but I'd want Razor to put PE agents on already installed machines without touching them in any other way\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11047", "fixedVersions": ["RAZOR 0.15.0"], "id": "11047", "issueType": "Sub-task", "key": "RAZOR-134", "labels": [], "originalEstimate": "PT0S", "parent": "11665", "parentSummary": "Brownfield deployments of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-06-13T12:02:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Develop a story for using Razor in an existing environment", "timeSpent": "PT0S", "updated": "2014-06-13T12:02:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This actually stems from my misunderstanding the various IPMI operations", "created": "2014-02-05T17:37:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/150 contains the code to fix this.", "created": "2014-02-05T18:09:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "Fix available in build PE 3.2.0-rc0-1228-gb026c4e.", "created": "2014-02-06T10:36:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "Verified as fixed in build PE 3.2.0-rc0-1228-gb026c4e. (Razor 0.14.1)", "created": "2014-02-06T17:25:00.000000"}], "components": ["Client", "Server"], "created": "2014-02-05T17:35:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67156936"}, {"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|hysx87:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_59042860_*|*_1_*:*_1_*:*_2224432_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_24538898"}], "description": "Currently we allow the user to specify a \"soft\" vs. \"hard\" reboot via the Razor command \"reboot-node\". This actually doesn't make any sense and needs to be removed. Also, the implementation currently uses \"power reset\" which isn't as safe as using \"power cycle\", so we should switch to using \"power cycle\" instead.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11474", "fixedVersions": ["RAZOR 0.15.0"], "id": "11474", "issueType": "Improvement", "key": "RAZOR-133", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-02-06T17:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Implement \"power cycle\" for the Razor Command \"reboot-node\"", "timeSpent": "PT0S", "updated": "2014-05-21T19:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [{"attacher": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "created": "2014-02-05T13:35:00.000000", "name": "razor_logs.tgz", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10269"}], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "I see this error in the console log after the creation of that repo record:\n\n{quote}\n11:34:52,353 INFO  [razor.messaging.sequel] (Thread-52 (HornetQ-client-global-threads-387532001)) retry message ID:92930db8-8e9c-11e3-82c5-f5caeeb43c20 after 0.0: incompatible encoding regexp match (ASCII-8BIT regexp with UTF-8 string)\n{quote}\n\nIt looks like we have an encoding issue in some of our source files, which would explain why this didn't create the directory: something failed early.  This usually originates when a regexp is in a Ruby source file without a source encoding flag.", "created": "2014-02-05T14:07:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/149 contains a fix for this: we mishandled Unicode strings", "created": "2014-02-05T17:34:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "Fix available in build PE 3.2.0-rc0-1228-gb026c4e.", "created": "2014-02-06T10:37:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "After extensive testing of the current version I am unable to reproduce this problem.  I assume this was simply not included in the PE build tested", "created": "2014-04-25T13:27:00.000000"}], "components": ["QA", "Server"], "created": "2014-02-05T13:35:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@21f9554a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq933:"}, {"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": "05/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_938059140_*|*_null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_16660829_*|*_3_*:*_1_*:*_9842379_*|*_5_*:*_1_*:*_3463770820_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_2_*:*_173215055"}], "description": "h1. Description\n\nIf a user attempts to create a repo that has a name that contains Unicode characters, Razor will fail to create the repo.\n\nInspection of the Razor repo directory (\"/opt/puppet/var/razor/repo\") reveals that no directory exists for the repo.\n\nh2. Attachments\n\n* Razor logs\n\nh2. Repro Steps\n\n# Install and configure a Razor server.\n# Install the Razor client on the Razor server.\n# Create a PE broker.\n# Execute the following command:\n{panel}razor create-repo --name \uc8fe\uc483\uc33c\uc2c1\uc51c\ubd1c\u315b\uc9d8\ud652\ub17f --iso-url <VALID_URL>{panel}\n\nh2. Expect\n\nRazor should create a repository.\n\nh2. Actual\n\nRazor never creates the repo directory, but does download the ISO from the URL to the \"/tmp\" directory.", "environment": "PE Version: 3.2.0-rc0-1206-gd8d46cc\nRazor Version: 0.14\nMaster: 2GB RAM - CentOS 6.4 x64\nRazor Server: 2GB RAM - CentOS 6.4 x64\nNode: 1GB RAM - CentOS 6.4 x64\n\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11822", "fixedVersions": ["RAZOR 0.15.0"], "id": "11822", "issueType": "Bug", "key": "RAZOR-132", "labels": ["i18n"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor Fails to Create Repository if the Repository Name Contains Unicode Characters", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [{"attacher": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "created": "2014-02-04T17:57:00.000000", "name": "razor_logs.tgz", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10195"}], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] -- I am presently investigating this to see if I can figure out what is going wrong.", "created": "2014-02-05T12:08:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This is not a bug, even remotely: the test run was to ask for a \"soft\" reboot of the node, which causes the IPMI firmware to signal an ACPI event requesting the reboot.  (Usually, I believe, simulating hitting the power button or reset button, or something, but I am not sure that is actually standard, and vendors can and probably have done stranger things.)\n\nTo quote from the documentation:\n{quote}\nRazor can request a node reboot through IPMI, if the node has IPMI credentials\nassociated.  Both hard (power cycle) and soft (request OS reboot through\nACPI).  This uses the standard IPMI mechanisms, and has the same limitations\n-- including that soft shutdown support may be implemented by simulating error\nstates such as overtemperature alerts by some vendors.\n{quote}\n\nIn this case, the target node did not have acpid, or any other ACPI interface layer that I could see, installed.  The IPMI firmware sent the request to the OS, and the OS did what it knew to do ... nothing.\n\nTo verify this I used ipmitool(1) on the command line to request a soft reboot and observed exactly nothing happening.  I then installed acpid, verified that it had some power button handling, and ran the same ipmitool(1) command.\n\nThe machine then powered off and remained off.  I believe this is because the firmware on that system chose to send a power button event, and the script that ships with acpid powers off the machine regardless of overall desire.\n\nNone the less, this shows that the IPMI support is functional, and the shortfall was that the OS had no configured response to the ACPI event delivered to it.  Once the OS was configured \"correctly\", as noted in the documentation, the soft reboot operation functioned.\n\nIn performing additional testing, a hard reset request was issued via IPMI, and the node ignored it.  Another soft reset request was issued, and the node was verified to invoke the acpid power button script and power off as configured.\n\nThese same behaviours, which are dictated by the firmware and OS, can be observed through the razor actions.  A soft reboot request, as documented being made in the reproduction steps, results in the same power off through power button behaviour once acpid is installed.\n\nThis functionality works as designed and documented.", "created": "2014-02-05T12:32:00.000000"}], "components": ["Server"], "created": "2014-02-04T17:57:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@138e89"}, {"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|hyswgf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_66935705_*|*_6_*:*_1_*:*_0"}], "description": "h1. Description\n\nIf a user attempts to reboot a node the reboot will never happen.\n\nI have confirmed that IPMI is working because I can set the power state to \"off\" and Razor will eventually power the machine down. Also, I have seen the reboot work before on the 0.13.0 release so I'm not sure what changed.\n\nh2. Attachments\n\n* Razor logs.\n\nh2. Repro Steps\n\n# Install and configure a Razor server.\n# Install the Razor client on the Razor server.\n# Create a repo.\n# Create a broker for Puppet Enterprise.\n# Create a policy that wraps the repo and broker.\n# Register a node with the Razor server.\n# Wait for the node to attach to the given policy and install the OS.\n# Execute the following command to reboot the node via IPMI:\n{panel}razor reboot-node --name node1{panel}\n\nh2. Expect\n\nRazor should reboot the node.\n\nh2. Actual\n\nThe node never reboots. (Waited a good 20 minutes)", "environment": "PE Version: 3.2.0-rc0-1147-gcad3afe\nRazor Version: 0.13\nMaster (razor-testing1.razor-test.delivery.puppetlabs.net): 8GB RAM - CentOS 6.4 x64\nRazor Server (perf-bl06-prod.delivery.puppetlabs.net): 8GB RAM - CentOS 6.4 x64\nNode (razor-testing2.razor-test.delivery.puppetlabs.net - *SUT*): 8GB RAM - Ubuntu 12.04 x64", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10923", "fixedVersions": [], "id": "10923", "issueType": "Bug", "key": "RAZOR-131", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Won't Fix", "resolutionDate": "2014-02-05T12:32:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Node Fails to Reboot After Issuing \"reboot-node\" Command", "timeSpent": "PT0S", "updated": "2018-04-03T12:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/196 - f696a29f48ccf8a935064890b73ed4e96b777aba", "created": "2014-04-25T15:36:00.000000"}], "components": ["QA", "Server"], "created": "2014-02-03T16:48:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@32e18bdb"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq93r:"}, {"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_*:*_520311942_*|*_1_*:*_1_*:*_6986506110_*|*_10007_*:*_1_*:*_350924148_*|*_3_*:*_1_*:*_4008628_*|*_5_*:*_1_*:*_3463779169_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147200433"}], "description": "In some environments it may take some time for networking to actually pass packets.  For example, switches using 802.1AX or not-standard trunking protocols, the Linux software bridging stack, and other technologies, introduce potential delays of 15-30 seconds from the link being available to actually forwarding packets.\n\nWe should retry DHCP for at least several minutes if it initially fails to discover an interface that can communicate with the Razor server, in order to work around these issues.\n\nAt the moment the we advise people to do this in an ad-hoc fashion, or to use, eg, `portfast` on Cisco systems to reduce the delay.  This should be standard.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11919", "fixedVersions": ["RAZOR 0.15.0"], "id": "11919", "issueType": "Improvement", "key": "RAZOR-128", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Retry DHCP during bootstrap to work around slow port availability", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "One example of how things go wrong", "created": "2014-01-31T04:14:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Estimate on this story covers the backend/groundwork needed for better validation", "created": "2014-03-06T13:19:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] Marking as DOCS as a catchall for all the command help that needs reviewing/editing\n", "created": "2014-05-05T16:54:00.000000"}], "components": ["DOCS", "QA", "Server"], "created": "2014-01-31T04:13:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6489e461"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6vr:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4684797867_*|*_10007_*:*_1_*:*_806948_*|*_3_*:*_1_*:*_10447840_*|*_5_*:*_1_*:*_4672755653_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2408388742"}], "description": "Argument validation is somewhat haphazard right now (though not catastrophically bad because we have a lot of constraints in the DB)\n\nIt needs to become more systematic, driven off some metadata description of commands, which clients incidentally could also use to understand commands.\n\nThere are also cases where raw postgres errors are sent back to clients (e.g. when trying to create a policy with a name that is in use already)", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11582", "fixedVersions": ["RAZOR 0.15.0"], "id": "11582", "issueType": "Story", "key": "RAZOR-118", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Better argument validation and error messages for commands", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimespent": "64800", "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [{"attacher": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "created": "2014-02-18T11:47:00.000000", "name": "windows-2008.yaml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10285"}, {"attacher": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "created": "2014-02-18T11:47:00.000000", "name": "windows-2012.yaml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10162"}, {"attacher": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "created": "2014-02-18T11:47:00.000000", "name": "windows.yaml", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10182"}], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I have a hard time reproducing this", "created": "2014-01-31T03:18:00.000000"}, {"author": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "body": "I have attached my .yaml files\n\nBasically I am attempting to have a central task folder \"windows\" and versions broken out in separate yamls. Inside the windows dir, there is a folder for each version as exampled with the windows dir in your repo \"win9-pro\". \n\nCurrently to get everything working I have a separate folder for each yaml and I removed the \"base:\" you see in windows-2008 and windows-2012 yamls. \n\n", "created": "2014-02-18T11:47:00.000000"}, {"author": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "body": "So the problem I have is when I configure a policy to use repo and task windows-2008 as an example. because the inheritance of \"os_version\" doesnt seem to work as documented, I get 2012 files since the base: windows yaml has an  os_version of 2012. I cant remove the os_version from windows.yaml. \n\nThe example I see in the repo is redhat and centos but they share the os_version. Is what I am trying to do not supported?", "created": "2014-02-19T23:21:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I've added an extra criterion to the existing test that covers task inheritance (task_spec.rb line 34), but it appears it was already behaving as expected.", "created": "2014-02-26T16:21:00.000000"}, {"author": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "body": "If it was behaving as expected, how is it that I cant get it to work? Based on the examples that are provided, the $version isn't superseding the BASE as its suppose to. ", "created": "2014-03-10T11:27:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc] \u2014 Can you tell me how you're creating the policy that uses the windows-2008.yaml file, and also where you are seeing that it is not getting overwritten? I've been testing this by using the underlying function that the API uses and it seems to overwrite correctly. We'll get this sorted out though.", "created": "2014-03-11T10:27:00.000000"}, {"author": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "body": "First thing I think was really unclear with my initial description. I see this manifested in the files/templates. I would expect that the files in task/os_version would be used when kicking a system. What I am finding is the os_version when pulling files is using the base os_version and not the specific task in the policy. Examples below if I am unclear with this description.\n\nHere is my Policy:\n{\n  \"name\": \"win-2008-r2-sp1\",\n  \"repo\": { \"name\": \"win-srv-2008-r2-sp1\" },\n  \"recipe\": { \"name\": \"windows-2008\" },\n  \"broker\": { \"name\": \"noop\" },\n  \"enabled\": true,\n  \"hostname\": \"win-host${id}.disney.local\",\n  \"root_password\": \"secret\",\n  \"max_count\": \"100\",\n  \"rule_number\": \"103\",\n  \"tags\": [{ \"name\": \"win-2008\",  \"rule\": [\"=\", [\"num\", [\"fact\", \"processorcount\"]], 1]}]\n}\n\n\nBelow is the tree for windows base task folder:\nwindows\n|-- 2008-R2-SP1\n|   |-- unattended.xml.erb\n|   `-- unattended.xml.erb.bkp\n|-- 2012-R2\n|   `-- unattended.xml.erb\n|-- 8-pro\n|   `-- unattended.xml.erb\n|-- boot_wim.erb\n|-- boot_wim_wpe4.erb\n|-- boot_wim_wpe5.erb\n|-- second-stage.ps1.erb\n|-- wimboot\n`-- WIMBOOT-LICENSE.txt\n\nWhat was happening:\nI would use above policy to kickstart a win-2008-r2 VM, the unattended file (template in task) that was loaded was the windows 2012 version. I changed the base tasks os_version to 2008 and it would provision the system just fine. \n\nAnother Example:\n\nxen\n|-- 6.1.0\n|   |-- answerfile.xml.erb\n|   |-- enablemp.sh.erb\n|   |-- post-install.erb\n|   |-- snmpd.conf.erb\n|   |-- xen-lvl-17.erb\n|   |-- xen-lvl-26.erb\n|   |-- xen-lvl-30.erb\n|   `-- xen-lvl-36.erb\n|-- 6.2.0\n|   |-- answerfile.xml.erb\n|   |-- enablemp.sh.erb\n|   |-- installed.erb\n|   |-- iptables.erb\n|   |-- post-install.erb\n|   |-- snmpd.conf.erb\n|   |-- xen-lvl-17.erb\n|   |-- xen-lvl-26.erb\n|   |-- xen-lvl-30.erb\n|   `-- xen-lvl-36.erb\n|-- boot_install.erb\n|-- pxelinux.0\n`-- pxelinux_xen.cfg.erb\n\nI had the same problem with XenServer (homebrewed tasks I built). I was attempting to provision xen-6.1.0 and xen-6.2.0 with base task named xen. whatever os_version was in task xen was used by the templates.   So that is a policy pointing to xen-6.1.0 but the answerfile.xml that was loaded came from the 6.2.0 subfolder for the base task xen. \n\n\nWhat I am seeing:\n\nTasks\nxen:\nos_version: 6.2.0\n\nxen-6.1.0 \nos_version: 6.1.0\nbase: xen\n\nExpectation:\nxen-6.1.0 --> xen/6.1.0/answerfile.xml.erb\n\nResults I get:\nxen-6.1.0 --> xen/6.2.0/answerfile.xml.erb\n", "created": "2014-03-11T11:39:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "I believe I've discovered the issue you encountered, and it's a directory issue. For the windows example to work, the .erb file must be located in one of:\n- Specific task+version: tasks/*windows-2008*/*2008-R2-SP1*\n- Specific task: tasks/*windows-2008*\n- Base task+version: tasks/*windows*/*2012-R2*\n- Base task: tasks/*windows*\n\nIt looks like your example was trying the base task's name and the specific task's os_version.\n\nI've started a [Mailing List|https://groups.google.com/forum/#!topic/puppet-razor/3nmj7YXjMoU] discussion if you would like to participate!\n\nI will leave this issue open until that mailing list either goes cold or reaches a conclusion, but the above information should solve the original issue.", "created": "2014-03-12T15:53:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This issue sparked an initiative to rework how template paths operate. The progress on that can be tracked under RAZOR-154. Closing this issue in the meantime. Thanks for raising it [~accountid:557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc]!", "created": "2014-03-18T14:14:00.000000"}], "components": ["Server"], "created": "2014-01-30T20:19:00.000000", "creator": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1b27447c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysupz:"}, {"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": "31/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2318504381_*|*_3_*:*_1_*:*_11437636_*|*_4_*:*_1_*:*_7528888_*|*_6_*:*_2_*:*_1185446344_*|*_10004_*:*_1_*:*_512347857"}], "description": "Greetings, \n\nLove razor, now to the point...\n\nWhen i am creating tasks I have attempted to utilize the \"os_version\".  I have a task named xen. I then have 3 yaml files (xen, xen-6.1, xen-6.2). for the  versioned tasks (6.1 and 6.2) I added the key/value \"base: xen\". Looking at the tasks under the api, everything looks as it should. When I actually implement it by provisioning a server. the os_version found in the base (xen.yaml) supersedes what ever is in the versioned tasks yaml files. \n\nDocumentation says that whatever is in the yaml that references the base is the used value (xen-6.1 supersedes xen) but either I seem to be doing something wring or its not working as intended. ", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11673", "fixedVersions": [], "id": "11673", "issueType": "Bug", "key": "RAZOR-117", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:3ae02087-3137-4609-86b6-5bdc4bf65dcc", "resolution": "Won't Fix", "resolutionDate": "2014-03-18T14:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Tasks and os_version", "updated": "2014-03-26T10:40:00.000000", "votes": "0", "watchers": [], "worklogs": [{"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "startDate": "2014-02-26T16:21:00.000000", "timeSpent": "PT7200S"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "startDate": "2014-03-18T14:14:00.000000", "timeSpent": "PT57600S"}]}, {"affectedVersions": [], "assignee": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Fixed in commit 7300d309", "created": "2014-01-29T04:02:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "Verified as fixed.", "created": "2014-02-05T18:00:00.000000"}], "components": ["DOCS"], "created": "2014-01-28T18:46:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5cda9764"}, {"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|hystan:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "29/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_546722595_*|*_1_*:*_1_*:*_33402624_*|*_4_*:*_1_*:*_17886_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_108331913"}], "description": "The [documentation|https://github.com/puppetlabs/razor-server/blob/master/doc/api.md#reboot-node] for \"reboot-node\" states:\n\n{panel}\\{\n  \"node\": \"node1\",\n  \"hard\": false\n\\}{panel}\n\nThe parameter \"node\" should be \"name\".\n\n{panel}\\{\n  {color:green}\"name\": \"node1\",{color}\n  \"hard\": false\n\\}{panel}", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11580", "fixedVersions": ["RAZOR 0.14.0"], "id": "11580", "issueType": "Improvement", "key": "RAZOR-111", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-02-05T18:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "API Documentation for \"reboot-node\" is Wrong", "timeSpent": "PT0S", "updated": "2014-02-05T18:00:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "added to tags info in docs.", "created": "2014-02-26T13:25:00.000000"}], "components": ["DOCS"], "created": "2014-01-27T14:37:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@308555ee"}, {"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|hyssgv:"}, {"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_*:*_65186608_*|*_5_*:*_1_*:*_9497710659_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_2522488449"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11274", "fixedVersions": [], "id": "11274", "issueType": "Bug", "key": "RAZOR-102", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-02-26T13:25:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Document that tag matching is case sensitive", "timeSpent": "PT0S", "updated": "2014-06-19T12:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "added to install page and to \"known issues\"", "created": "2014-02-12T18:14:00.000000"}], "components": ["DOCS"], "created": "2014-01-27T14:32:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6fb641b7"}, {"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|hyssgf:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Feb/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_65468041_*|*_5_*:*_1_*:*_10689943030_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_1330273198"}], "description": "The Microkernel is only available for x86_64 (64bit arch), not for 32 bit. That means that Razor can only provision 64 bit systems.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11077", "fixedVersions": [], "id": "11077", "issueType": "Task", "key": "RAZOR-101", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-02-12T18:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Document that the Razor MK is x86_64 only", "timeSpent": "PT0S", "updated": "2014-06-19T12:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The problem is that there is a significant difference in JSON between single and double quotes: only double quotes are valid string delimiters. So the fact that MultiJson complains is completelely valid.", "created": "2014-01-24T09:01:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "This is not a bug", "created": "2014-01-24T09:05:00.000000"}, {"author": "623c111b761efb0069ce04c7", "body": "Ah working with ruby/puppet recipes where quoting is exactly the opposite then working with json files is hard.\n\nWell, I guess I need to complain to multi_json ruby gem then that its error message is completely unusable (it always blamed the first character in the file as \"unexpected\")\n\n", "created": "2014-01-24T09:12:00.000000"}], "components": ["Client"], "created": "2014-01-24T08:15:00.000000", "creator": "623c111b761efb0069ce04c7", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5dc223c3"}, {"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|hysra7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3030006_*|*_6_*:*_1_*:*_0"}], "description": " Razor client's metadata commands (modify-node-metadata and update-node-metadata) don't accept a json file via --json. Parsing any input always fails with \"MultiJson::LoadError\" while printing out the first character, usually a { - sign. It won't work when omitting correct json begin and end tags either.\n\nUsing the update-node-metadata command works iff all command parameters are inlined on the cli instead of passing a json file via --json.\n\nExample:\n\nbq. $ razor nodes node9\nFrom http://razor:8080/api/collections/nodes/node9:\n\n             id: \"http://razor:8080/api/collections/nodes/node9\"\n           name: \"node9\"\n           spec: \"/razor/v1/collections/nodes/member\"\n        hw_info: \n                    mac: [\"52-54-00-79-e6-73\"]\n                   uuid: \"9e08fe75-dd67-5075-7af1-6419647cafd2\"\n       dhcp_mac: \"52-54-00-79-e6-73\"\n         policy: (deleted for brevity)\n           tags: [ (deleted for brevity)\n                 ]\n          facts: \n                             architecture: \"x86_64\"\n                            ...\n                               is_virtual: \"true\"\n       metadata: \n                   ip: \"192.168.168.204\"\n          state: \n                      installed: \"ubuntukvm\"\n                   installed_at: \"2014-01-16T16:46:01+01:00\"\n                          stage: \"boot_local\"\n       hostname: \"kvm9.nine.ch\"\n  root_password: \"changeme\"\n   last_checkin: \"2013-10-11T16:07:34+02:00\"\n\nbq. File metadata.json:\n{\n  'node': 'node9',\n  'key': 'test',\n  'value': 'foo',\n  'no_replace': true\n}\n\nbq. $ razor update-node-metadata --json metadata.json \n/usr/lib/ruby/vendor_ruby/json/common.rb:155:in `parse': 795: unexpected token at '{ (MultiJson::LoadError)\n  'node': 'node9',\n  'key': 'test',\n  'value': 'foo',\n  'no_replace': true\n}\n'\n        from /usr/lib/ruby/vendor_ruby/json/common.rb:155:in `parse'\n        from /var/lib/gems/1.9.1/gems/multi_json-1.7.9/lib/multi_json/adapters/json_common.rb:16:in `load'\n        from /var/lib/gems/1.9.1/gems/multi_json-1.7.9/lib/multi_json/adapter.rb:19:in `load'\n        from /var/lib/gems/1.9.1/gems/multi_json-1.7.9/lib/multi_json.rb:118:in `load'\n        from /opt/razor-client/lib/razor/cli/navigate.rb:71:in `extract_command'\n        from /opt/razor-client/lib/razor/cli/navigate.rb:55:in `get_document'\n        from /opt/razor-client/bin/razor:34:in `<main>'\n\nHowever:\n\nbq. $ razor update-node-metadata --node node9 --key test --value foo\nFrom http://razor:8080/api:\n\n    id: \"http://razor:8080/api/collections/nodes/node9\"\n  name: \"node9\"\n  spec: \"/razor/v1/collections/nodes/member\"\n\nbq. $ razor nodes node9\n\n(lots of stuff)\n       metadata: \n                     ip: \"192.168.168.204\"\n                   test: \"foo\"\n          state: \n                      installed: \"ubuntukvm\"\n                   installed_at: \"2014-01-16T16:46:01+01:00\"\n                          stage: \"boot_local\"\n       hostname: \"kvm9.nine.ch\"\n  root_password: \"changeme\"\n   last_checkin: \"2013-10-11T16:07:34+02:00\"\n\n\nrazor-client is newest from git, bundle install has been executed but doesn't change anything. razor-server is also from git and at most 3 days behind git.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11469", "fixedVersions": [], "id": "11469", "issueType": "Bug", "key": "RAZOR-95", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c111b761efb0069ce04c7", "resolution": "Won't Fix", "resolutionDate": "2014-01-24T09:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "update and modify-node-metadata don't parse json files", "timeSpent": "PT0S", "updated": "2014-01-24T09:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [{"attacher": "557058:265ed483-36f5-4dd5-bd23-e075ed911c23", "created": "2014-01-15T13:25:00.000000", "name": "pxeboot2.png", "uri": "https://puppet.atlassian.net/rest/api/3/attachment/content/10209"}], "comments": [{"author": "557058:265ed483-36f5-4dd5-bd23-e075ed911c23", "body": "PXE boot capture. The macaddress sent from the bare metal server is highlighted.", "created": "2014-01-15T13:25:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in 3bb72a3.\n\nThis case will be solved by using \"upper\" or \"lower\" as functions that can work on the MAC address (and any strings). The matcher would look like this:\n\n{code}\n[ \"=\", [ \"upper\", [ \"fact\", \"macaddress\" ] ], \"F0:1F:AF:D8:F2:A6\" ]\n{code}", "created": "2014-04-03T11:39:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] for documentation: we need to document the 'lower' and 'upper' functions in the tag language, and have an example somewhere how to use them for case-insensitive matching as in Scott's comment above. (pre-docs should appear at https://github.com/puppetlabs/razor-server/wiki/Tags shortly)", "created": "2014-05-05T16:58:00.000000"}, {"author": "557058:6005f535-c964-48fd-ae7a-e50b5172d346", "body": "I am having the same problems with the \"upper\" functions when creating tags in 0.15\n\nI am posting: \n\n{\n  \"name\": \"Test_clone17\",\n  \"rule\": [ \"=\", [ \"upper\", [ \"fact\", \"macaddress\" ] ], \"F0:1F:AF:D8:F2:A6\" ]\n}\n\nAnd getting a response of:\nError from doing POST http://localhost:8080/api/commands/create-tag\n400 Bad Request\n  error: matcher could return incompatible datatype(s) from function 'fact' ([TrueClass, FalseClass, Numeric, NilClass]) for argument 0. Function 'upper' expects ([String])\n\nIs this resolved in 0.16?\n", "created": "2014-11-24T03:26:00.000000"}], "components": ["DOCS", "QA", "Server"], "created": "2014-01-15T13:13:00.000000", "creator": "557058:265ed483-36f5-4dd5-bd23-e075ed911c23", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@341b63ba"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6zb:"}, {"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": "06/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_447258819_*|*_1_*:*_1_*:*_6475457773_*|*_10007_*:*_1_*:*_242372294_*|*_3_*:*_1_*:*_12153309_*|*_5_*:*_1_*:*_4672757668_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1277208919"}], "description": "A tag was created as follows:\n\n{\n    \"spec\": \"http://api.puppetlabs.com/razor/v1/collections/tags/member\",\n    \"id\": \"http://172.15.1.12:8080/api/collections/tags/stockTag1881\",\n    \"name\": \"stockTag1881\",\n    \"rule\": [\n        \"=\",\n        [\n            \"fact\",\n            \"macaddress\"\n        ],\n        \"F0:1F:AF:D8:F2:A6\"\n    ]\n}\n\nAnd there is a policy associated with this tag:\n\n{\n    \"spec\": \"http://api.puppetlabs.com/razor/v1/collections/policies/member\",\n    \"id\": \"http://172.15.1.12:8080/api/collections/policies/stockPolicy95\",\n    \"name\": \"stockPolicy95\",\n    \"repo\": {\n        \"spec\": \"http://api.puppetlabs.com/razor/v1/collections/repos/member\",\n        \"id\": \"http://172.15.1.12:8080/api/collections/repos/centos-6.5\",\n        \"name\": \"centos-6.5\"\n    },\n    \"installer\": {\n        \"spec\": \"http://api.puppetlabs.com/razor/v1/collections/installers/member\",\n        \"id\": \"http://172.15.1.12:8080/api/collections/installers/centos\",\n        \"name\": \"centos\"\n    },\n    \"broker\": {\n        \"spec\": \"http://api.puppetlabs.com/razor/v1/collections/brokers/member\",\n        \"id\": \"http://172.15.1.12:8080/api/collections/brokers/aaa_puppet\",\n        \"name\": \"aaa_puppet\"\n    },\n    \"enabled\": true,\n    \"max_count\": 100,\n    \"configuration\": {\n        \"hostname_pattern\": \"host${id}.mycompany.com\",\n        \"root_password\": \"rootpassword\"\n    },\n    \"rule_number\": 95,\n    \"tags\": [\n        {\n            \"spec\": \"http://api.puppetlabs.com/razor/v1/collections/tags/member\",\n            \"id\": \"http://172.15.1.12:8080/api/collections/tags/stockTag1881\",\n            \"name\": \"stockTag1881\"\n        }\n    ]\n}\n\nWhen the physical host PXE boots into microkernel and checks in, a new node is created, but there is no tags match therefore no policy on the new node -- until I updated the macaddress in the tag from uppercase (\"F0:1F:AF:D8:F2:A6\") to all lower case (\"f0:1f:af:d8:f2:a6\").", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11594", "fixedVersions": ["RAZOR 0.15.0"], "id": "11594", "issueType": "Bug", "key": "RAZOR-89", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:265ed483-36f5-4dd5-bd23-e075ed911c23", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "macaddress matching in tag seems to be case sensitive", "timeSpent": "PT0S", "updated": "2014-11-24T03:26:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I think not all of them are an issue, let me go through them in detail:\n\n* add-policy-tag/remove-policy-tag: these are about adding/removing a tag to/from a policy. That naming makes sense to me\n* we could rename the delete-* commands to remove-* to only use one word here", "created": "2014-01-15T11:15:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "I think that \"set\" is generally a better term than \"update\" for mutation changes", "created": "2014-01-27T13:17:00.000000"}, {"author": "623c12047910a200718b9434", "body": "Can we have:\n  - add/remove for modifying relationships between different existing objects\n  - create/delete for adding and removing objects\n  - update for changing existing objects where changes are relative to existing settings (eg where a setting value is an array or hash).\n  - set for changing existing objects where the new value is to be absolute, i.e. replace the existing value entirely.\n\nWith regards to the metadata commands. The functionality of each is quite different.  One is an operation on a specific key (and is very simple to use with a GET) and the other is a bulk operation requiring a PUSH.  I could possibly change these to update-node-metadata (bulk) and update-node-metadata-key?\n\nThe other thing worth putting on the table is potentially re factoring the command names from <action>-<object> to <object>-<action>.  This, mainly so that when you sort the commands alphabetically, all the commands for each object type are together.", "created": "2014-04-06T16:04:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T18:01:00.000000"}], "components": ["Client"], "created": "2014-01-14T17:00:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@87fd820"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysmpz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_11809632328_*|*_6_*:*_1_*:*_0_*|*_10010_*:*_1_*:*_29914225734_*|*_10006_*:*_1_*:*_7380680"}], "description": "The Razor command set is not consistent with verb usage. (i.e. use of \"delete\" and \"remove\") It would make more sense to have a distinct verb set to use for commands that have a consistent meaning. As an example of what I am talking about you should take a look at [PowerShell verbs|http://msdn.microsoft.com/en-us/library/ms714428%28v=vs.85%29.aspx].\n\nI have highlight below the verbs that I think need to clarified:\n{panel}{color:blue}add{color}-policy-tag\n        create-broker\n        create-policy\n        create-recipe\n        create-repo\n        create-tag\n        {color:red}delete{color}-node\n        {color:red}delete{color}-policy\n        {color:red}delete{color}-repo\n        {color:red}delete{color}-tag\n        disable-policy\n        enable-policy\n        {color:green}modify{color}-node-metadata\n        {color:green}modify{color}-policy-max-count\n        reinstall-node\n        {color:red}remove{color}-node-metadata\n        {color:red}remove{color}-policy-tag\n        set-node-ipmi-credentials\n        {color:blue}update{color}-node-metadata\n        {color:green}update{color}-tag-rule\n{panel}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11917", "fixedVersions": [], "id": "11917", "issueType": "Bug", "key": "RAZOR-88", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T18:01:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Mixed Use of Similar Verbs in Razor Commands", "timeSpent": "PT0S", "updated": "2015-05-12T18:01:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "576000", "aggregatetimeoriginalestimate": "576000", "aggregatetimespent": "64800", "assignee": null, "attachments": [], "comments": [], "components": [], "created": "2014-01-10T15:15:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5f189184"}, {"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-6"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Milestone 2"}, {"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": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "green"}, {"fieldName": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "623e76afd32a94006a65d63d"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyslcn:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_2_*:*_120331729615_*|*_5_*:*_1_*:*_14880643841_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11592", "fixedVersions": [], "id": "11592", "issueType": "Epic", "key": "RAZOR-83", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-07-21T11:47:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Bucket for next high-level milestone", "timeSpent": "PT0S", "updated": "2018-04-24T15:14:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I just updated the Wiki", "created": "2014-01-27T14:53:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "Verified as fixed in build PE 3.2.0-rc0-1206-gd8d46cc. (Razor 0.14.0)", "created": "2014-02-05T13:07:00.000000"}], "components": ["DOCS"], "created": "2014-01-10T12:36:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@62b0163"}, {"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|hysla7:"}, {"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": "1_*:*_1_*:*_1477033004_*|*_5_*:*_1_*:*_482556_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_770718004"}], "description": "The documentation on the wiki states the following:\n\n{panel}{color:red}The name of the node is simply the MAC address of its interface{color} (or those MAC addresses glommed together if the node has more than one interface). It can be used to get more information about the node via razor nodes 5254000d97f0{panel}\n\nThe sentence I highlighted is wrong, the actual name for nodes follows the format \"node#\"\n\nHere is what I see on my system:\n\n{panel}id: \"http://localhost:8080/api/collections/nodes/node1\"\nname: \"node1\"                                            \nspec: \"/razor/v1/collections/nodes/member\"{panel}\n\nThe documentation needs to be updated to reflect the actually naming convention for nodes.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11591", "fixedVersions": ["RAZOR 0.14.0"], "id": "11591", "issueType": "Bug", "key": "RAZOR-81", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-02-05T13:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Documentation for \"nodes\" Name is Wrong", "timeSpent": "PT0S", "updated": "2014-02-05T13:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "Dup of RAZOR-7", "created": "2014-03-06T13:07:00.000000"}], "components": ["Server"], "created": "2014-01-06T18:41:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@288cc4ac"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysjl3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5077540895_*|*_6_*:*_1_*:*_0"}], "description": "The API needs to give users a facility to track the progress of a command, especially for image import.\n\nThis should be done in a way that especially failures for background jobs can be tracked and diagnosed, e.g. though a job object whose URL is returned as part of the command", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11465", "fixedVersions": [], "id": "11465", "issueType": "Improvement", "key": "RAZOR-80", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Duplicate", "resolutionDate": "2014-03-06T13:07:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Track progress of background task", "timeSpent": "PT0S", "updated": "2014-05-05T16:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T18:00:00.000000"}], "components": ["Microkernel"], "created": "2014-01-06T18:34:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3f0a07d6"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysjkn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_42416748464_*|*_6_*:*_1_*:*_0"}], "description": "Rather than a single command, the mk/server protocol should allow for an MK to accept a list of commands to execute.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11119", "fixedVersions": [], "id": "11119", "issueType": "Bug", "key": "RAZOR-79", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T18:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Accept list of commands from server", "timeSpent": "PT0S", "updated": "2015-05-12T18:00:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "This is really user error.", "created": "2014-03-06T13:05:00.000000"}], "components": ["Server"], "created": "2014-01-06T12:15:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@59e1da35"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysj4f:"}, {"fieldName": "UX Priority", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Major"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5100634528_*|*_6_*:*_1_*:*_0"}], "description": "We had a user submit this JSON:\n\n{code}\n{\n    \"name\": \"centos_tag_puppet\",\n    \"rule\": [\"and\",\n             [\"=\", [\"num\", [\"fact\", \"processorcount\"]], 1],\n             [\"=\", [\"fact\", \"is_virtual\"], \"true\"],\n             [\">=\", [\"num\", [\"fact\", \"memorysize_mb\"]], 1024]\n            ],\n    \"rule\": [\"or\",\n             [\"=\", [\"fact\", \"macaddress\"], \"00:50:56:2A:3C:E7\"]\n            ]\n}\n{code}\n\nThis created a tag as follows:\n\n{code}\nFrom http://localhost:8080/api/collections/tags/centos_tag_puppet:\n\n    id: \"http://localhost:8080/api/collections/tags/centos_tag_puppet\"\n  name: \"centos_tag_puppet\"\n  spec: \"/razor/v1/collections/tags/member\"\n  rule: [\n          \"or\"\n\n          [\"=\", [\"fact\", \"macaddress\"], \"00:50:56:2A:3C:E7\"]\n        ]\n{code}\n\nIdeally, that command should have been rejected because the duplicate key in the object is illegal in JSON -- and a clean failure message would have made it obvious to the user where things went wrong.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11070", "fixedVersions": [], "id": "11070", "issueType": "Bug", "key": "RAZOR-78", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2014-03-06T13:05:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Invalid JSON does not fail as it should.", "timeSpent": "PT0S", "updated": "2014-03-06T13:05:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "Daniel pointed me at the razor-admin wrapper that the puppet module lays down. I think using that wrapper resolves my needs, so I'll close this out.", "created": "2013-12-27T18:37:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "I don't think this is actually a problem now that I'm aware of the wrapper.", "created": "2013-12-27T18:38:00.000000"}], "components": [], "created": "2013-12-27T16:59: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@12364751"}, {"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|hysh73:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5896890_*|*_6_*:*_1_*:*_0"}], "description": "Currently razor-admin makes several assumptions about the filesystem layout. Mainly, it assumes that the razor lib directory and db directory will exist in the parent directory of where razor-admin is. This works fine if the user has just unpacked the razor knob on disk somewhere.\nIn the example of Puppet Enterprise, if razor-admin is installed to /opt/puppet/bin, razor-admin will expect to find razor's libs installed into /opt/puppet/lib, which is reasonable. However, it will also expect to find db migrations in /opt/puppet/db, a location which would likely conflict with other web applications if it were widely used.\nIt would be most excellent if the db migration directory and the libdir could be overridden or customized in some way for razor-admin.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11065", "fixedVersions": [], "id": "11065", "issueType": "Improvement", "key": "RAZOR-77", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "resolution": "Won't Fix", "resolutionDate": "2013-12-27T18:38:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "razor-admin should support a wider variety of filesystem layouts", "timeSpent": "PT0S", "updated": "2013-12-27T18:38:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:c4ec89d6-62e0-4aea-9c10-61afcf7f45b2", "body": "I ran into this same issue today but was able to work around the problem via a local {{boot_local.erb}} task that simply forces sanboot. This is only for our XenServer custom task, but automated detection of this would be highly appreciated!", "created": "2014-03-19T15:53:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Unfortunately, we have no way to automatically detect this -- by the time we could even know there was an issue, it is too late, and we are already sitting in a firmware \"no more devices to boot\" prompt.\n\nThe best plan we can offer is to allow metadata to be set on the node to engage the work-around.  Anything beyond that... well, if you have any ideas how we can know ahead of time that this happens, I would love to hear them. :)", "created": "2014-03-20T10:42:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/195 - 9a313b01b15560dbc2b49c82a6e63fb430c5c384", "created": "2014-04-25T14:29:00.000000"}], "components": ["QA", "Server"], "created": "2013-12-23T18:12:00.000000", "creator": "623cfe26a1d81f0069d96ddb", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6aee3f58"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq93z:"}, {"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_*:*_873959111_*|*_1_*:*_1_*:*_10606538045_*|*_10007_*:*_1_*:*_1302662_*|*_3_*:*_1_*:*_3716500_*|*_5_*:*_1_*:*_3463783150_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147191562"}], "description": "I am trying to bring up a bare metal server (Cisco UCS c200 M2) to load ESX5.1 with the help of Razor. I could see, my server powers up, then go for network boot (my 1st boot option is NW boot and second boot option is local HDD), iPXE boot is successful, Razor installation of ESX 5.1 is also successful. \n\nAfter the above step, we expect the system to boot using the second boot option (HDD in my case) and complete the ESX5.1 installation steps without any user intervention. But here, the console hangs with the following o/p,\n\nPXE-E61 - Media test Failure, check cable\nPXE-MOF: Exiting Intel Boot Agent.\n\nAs a workaround if we give sanboot from the ipxe console, it goes through fine without any issues. So we need to implement this logic, where if the ipxe does not boots the server lcoally, we should go for Sanboot.\n\nWe discussed this issue with Daniel and raising this bug to address the same.\n\nRegards,\nDhanarajan.P", "environment": "Centos\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11572", "fixedVersions": ["RAZOR 0.15.0"], "id": "11572", "issueType": "Improvement", "key": "RAZOR-76", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623cfe26a1d81f0069d96ddb", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Need to implement to flag our machine to do sanboot workaround if they fail to boot locally", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "518400", "aggregatetimeoriginalestimate": "576000", "aggregatetimespent": "144000", "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": [], "created": "2013-12-18T10:52:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6fed89e6"}, {"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-8"}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Milestone 1"}, {"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": "Issue color", "fieldType": "com.pyxis.greenhopper.jira:jsw-issue-color", "value": "dark_purple"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysci7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6736416911_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11589", "fixedVersions": [], "id": "11589", "issueType": "Epic", "key": "RAZOR-75", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-03-06T10:06:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "First reasonably complete milestone of Razor", "timeSpent": "PT0S", "updated": "2014-03-06T10:07:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "The server should be fine with a transition to another port, but I have not tested either the iPXE or MK image handling of alternate ports.  I would guess that the later, at least, would find some challenges in this.  This is predominantly going to be a testing burden.", "created": "2013-12-17T12:38:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "[~accountid:557058:b6301e26-c165-42d0-ab3a-59124339555e] what specifically do you have in mind here ? Since the port can be changed in the environment/sysconfig file, do we still need to do anything here ?", "created": "2014-03-06T13:03:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "[~accountid:623c12b6ee1b5a0070293582] Updating the server port is easy, but verifying that the client, ipxe, and mk can handle alternate ports seem to be the work left to make this complete.", "created": "2014-03-06T13:13:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Just as an FYI I think this may have been a question from [~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629], or a general question from the team.  I used my account to log into the public computer during our planning meeting today so that's probably why it looks like I asked this question.", "created": "2014-03-06T20:38:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "As an FYI, in Puppet Enterprise there is a sysconfig script that allows the port razor runs on to be configurable.\n\nThe sub-tasks related to this issue are about validating that configuring a different port does in fact work as expected.", "created": "2014-03-20T12:02:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "The work seems done here. Daniel has verified that Razor runs when configured for a different port in RAZOR-172, and the way that port changes will be handled outside of Razor, likely in TorqueBox or Puppet Enterprise.\n\nMarking this as DOCS to document how to change the port by editing RAZOR_PORT in /etc/sysconfig/pe-razor-server.", "created": "2014-05-02T15:29:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] I added this note: You can change the port by editing `RAZOR_PORT` in `/etc/sysconfig/pe-razor-server`.\n\non this page: http://docspreview1.puppetlabs.lan/pe/latest/razor_install.html#before-you-begin\n\nWill that do it?", "created": "2015-03-25T16:21:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: The PE approach on this has shifted to using the pe_razor module. We should advise users to instead use the module parameters $server_http_port and $server_https_port.", "created": "2015-03-25T18:36:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "This has been added to the docs: http://docspreview1.puppetlabs.lan/pe/latest/razor_install.html#changing-the-default-razor-port\n", "created": "2015-04-02T18:59:00.000000"}], "components": ["DOCS", "Server"], "created": "2013-12-17T12:34: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@7e72a077"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq92n:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"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/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6827269527_*|*_3_*:*_1_*:*_6566780_*|*_10009_*:*_2_*:*_321291248_*|*_5_*:*_2_*:*_5499046332_*|*_6_*:*_2_*:*_28255386152_*|*_10004_*:*_1_*:*_4923499186_*|*_10006_*:*_1_*:*_692215393"}], "description": "Currently the port that razor-server runs on is stuck at the torquebox default of 8080. This is configurable at the torquebox layer, but isn't exposed to users in a meaningful way.\n\nThis may prove problematic if razor-server were installed on the same machine as another java app such as puppetdb, which also defaults to 8080.\n\nIt would be most excellent if the port were configurable.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11061", "fixedVersions": ["RAZOR 1.0"], "id": "11061", "issueType": "Improvement", "key": "RAZOR-74", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "resolution": "Fixed", "resolutionDate": "2015-04-06T09:45:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "The port razor runs on should be configurable", "timeSpent": "PT0S", "updated": "2015-06-09T01:16:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "_[daniel-pittman|https://github.com/daniel-pittman] said:_\n\nHrm. When we download a file from an HTTP URI, the code in lib/razor/data/repo.rb:81 is used -- and that specifically allocates a temporary directory named \"razor-repo-${name}-download\" to hold the file. (I even try and stream the content so that it should go directly from network to target location.)\n\n....ah, and there is the problem, in the implementation of open-uri. I assumed that it would behave like net/http does, and stream the data to me. Instead, it \"buffers\" to disk to provide seek in the IO it returns, which means that we actually make two copies of the image on disk before we are done.\n\nThe open-uri implementation uses tempfile to create that file, so it should ultimately be removed, but it might depend on the garbage collector finaliser to actually cause that to happen -- I certainly don't see an explicit destroy in the code that would trigger it earlier.\n\nIn any case, that file shouldn't exist in the first place, let alone be left behind. I will retitle this ticket to reflect what needs to happen, and that will (a) fix the double-copy of data, and (b) solve this problem by side effect.\n\nThanks for discovering this. No thanks to you, Ruby open-uri author, for your design decisions.", "created": "2013-12-16T18:56:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in commit b66b675b87e91a0f01336d6309e48e9b79b3100b.", "created": "2014-03-18T17:58:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Question that came up in planning today:  When in \"Ready for CI\" razor is waiting to flow into a PE build.  How does Razor get into a PE build?\n\nThings we discussed are that we have FOSS releases, does it need to be released as FOSS before it can be included in a PE build?  ", "created": "2014-03-26T11:01:00.000000"}], "components": ["QA", "Server"], "created": "2013-12-16T18:55:00.000000", "creator": "623c128750bb2b0070b6b349", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6d83f978"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6xj:"}, {"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": "17/Dec/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_684014601_*|*_1_*:*_1_*:*_7421815009_*|*_10007_*:*_1_*:*_81392378_*|*_3_*:*_1_*:*_420301681_*|*_5_*:*_1_*:*_4672747715_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_2418380526"}], "description": "_Copy of [Issue 66|https://github.com/puppetlabs/razor-server/issues/66] reported by [maishsk|https://github.com/maishsk]:_\n\nWhen creating a repo the files are temporarily stored in /tmp\nlike the example below\n\nbq. \\-rw------- 1 razor-server razor-server 3720347648 Oct 16 16:31 open-uri20131016-1401-1yfq1la\n\nOnce the repo is created the files are not removed.\n\nWould it be possible to run a clean up after the repo has been created?", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "10899", "fixedVersions": ["RAZOR 0.15.0"], "id": "10899", "issueType": "Improvement", "key": "RAZOR-73", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c128750bb2b0070b6b349", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:41:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Avoid double-copy of ISO files on disk", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Documented in https://github.com/puppetlabs/razor-server/wiki/Getting-started", "created": "2014-04-24T17:39:00.000000"}], "components": ["DOCS", "Server"], "created": "2013-12-16T18:41:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@628b16b7"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq93b:"}, {"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_*:*_11138201800_*|*_3_*:*_1_*:*_109347_*|*_5_*:*_1_*:*_4561217061_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 69|https://github.com/puppetlabs/razor-server/issues/69]:_\n\n{quote}\n\n\n    Indeed that worked! Can't believe I missed that one.\n    for the record: the documentation doesn't tell how to pass the configuration\n    to the broker. I couldn't find a way to add the configuration on the command\n    line but creating a json file and using that to create the broker seems to\n    work. command looks like this: razor create-policy --json\n\n    file looks like this:\n    \\{\n    \"name\": \"rabbitmq1\",\n    \"broker-type\": \"rabbitmq\",\n    \"configuration\" : \\{\n       \"rabbit-queue\": \"razor\",\n        \"rabbit-server\": \"ip.ad.dr.ess\"\n      }\n    }\n\n{quote}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11913", "fixedVersions": ["RAZOR 0.15.0"], "id": "11913", "issueType": "Improvement", "key": "RAZOR-72", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-04-24T17:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Document adding configuration to the broker", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "_[daniel-pittman|https://github.com/daniel-pittman] said:_\n\nWell, generating a single SQL query is a nice optimisation -- but throwing the process to a background task and manually iterating through the entire database isn't that terrible a first cut at it, IMO.", "created": "2013-12-16T18:26:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "_[daniel-pittman|https://github.com/daniel-pittman] said:_\n\n\n\nActually, thinking a little further on this: if we are really committed to going down this path, perhaps we should just stop reinventing the wheel and simply use SQL as the language. In all honesty, there is very little that building our own language gives us that we couldn't get from PostgreSQL.\n\nAddressing the potential for malicious activity can be tackled a few ways -- including having an appropriate secondary role to use for these actions that doesn't have the same privileges as the primary role, and by structuring queries and SQL execution to reduce injection surface. (Plus, putting it behind authentication, to reduce anonymous attack frontage.)\n\nI think this is the database level corollary to \"don't try and reinvent Excel in your web application\", since we don't currently express anything that isn't valid SQL, but we also don't store data in a way that is visible to the database storage engine.\n\nThe biggest cost that I see is that we either (a) require a version of PSQL that supports JSON data, (b) map the JSON to XML in various columns and use the native XML types, or (c) use hstore and give only store string key/value pairs -- with attendant casting.\n\n(At the moment the last point, casting, isn't an issue since we do the same with facts", "created": "2013-12-16T18:27:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "\n\nAgree that as a first cut iterating over all nodes isn't too terrible (as long as there are only hundreds of nodes, shouldn't be an issue)\n\nI do want this query capability to be available for straightup queries, too, which means we can't generally do it in a background process, i.e. people should be able to do 'GET /api/collections/nodes?match='(> (fact \"processorcount\") 2)' synchronously", "created": "2013-12-16T18:27:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "_[daniel-pittman|https://github.com/daniel-pittman] said:_\n\n{quote}\nOn Wed, Sep 11, 2013 at 12:17 PM, David Lutterkort <notifications@github.com> wrote: \n\nAgree that as a first cut iterating over all nodes isn't too terrible (as long as there are only hundreds of nodes, shouldn't be an issue) \n\nI do want this query capability to be available for straightup queries, too, which means we can't generally do it in a background process, i.e. people should be able to do 'GET /api/collections/nodes?match='(> (fact \"processorcount\") 2)' synchronously", "created": "2013-12-16T18:38:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] I'm unclear on whether there is still a use case for querying for (basically) all nodes that match a tag rule, when one could just create the tag and query nodes that match the tag. Does it seem worth adding this for single-use queries?\n\nFrom the CLI, it doesn't seem to fit very well. {{razor nodes <anything>}} will treat the {{<anything>}} as the name of a node, and adding a fallback to some other query parameter would be a new precedent for our API. Maybe true argument parsing, like commands, via {{razor nodes --match '\\[\">\", \\[\"fact\", \"processorcount\"], 2]'}}.", "created": "2016-03-02T01:15:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Just by the fact that this has been sitting around for such a long time makes me think we should just close this. There are some gaps though, like bulk deleting/unbinding nodes but I am not sure how important that is for users and we might want to wait until we have some more clarity on how useful such capabilities would be.", "created": "2016-03-02T11:22:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Sounds good, closing.", "created": "2016-03-02T11:49:00.000000"}], "components": ["Server"], "created": "2013-12-16T18:25:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@590910f7"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysbfz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Mar/16"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_69701041344_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 41|https://github.com/puppetlabs/razor-server/issues/41]_:\n\nWe need a query language to find nodes (and allow using that language to do things like delete nodes) This language should essentially be the same as the one used for tags.\n\nCurrently, this is somewhat difficult since the way we store facts forces us to load each node into memory to determine if it matches; we need to be able to generate a SQL query for a match rule.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11058", "fixedVersions": [], "id": "11058", "issueType": "Improvement", "key": "RAZOR-71", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2016-03-02T11:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Query language to find nodes", "timeSpent": "PT0S", "updated": "2016-03-02T11:49:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "_[daniel-pittman|https://github.com/daniel-pittman] said:_\n\nThis extension, which can be added to the Sequel library, handles this more cleanly: http://sequel.rubyforge.org/rdoc-plugins/classes/Sequel/ConnectionValidator.html \n\nThe alternative is to catch that exception at a higher level and replay the underlying operation. If we used a command queue for all input commands we would get that for free, modulo the exception record, but without it we either make the big switch or we have to do it by hand.\n\nOn the query side we could certainly just retry once or twice fairly simply at the top level -- or better yet, transparently, in a Rack wrapper around the code.", "created": "2013-12-16T18:23:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "Any update on this? I've tested the ConnectionValidator works by editing lib/razor/initialize.rb and adding to it:\n\n{code}\nRazor.database.extension :connection_validator\nRazor.database.pool.connection_validation_timeout = -1\n{code}\n\nThis causes connection checks on every use - but as the docs suggest probably at a performance cost.  Setting it to something like 10 means we get failed queries for a while but then it recovers.  Not really sure what the best approach is wrt to the timing of the checks but it would be really good to get Razor to behave better in cases where it's DB goes away due to maintenance or unexpected event", "created": "2015-03-13T07:44:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "Using a newer version of the Sequel gem also helped without any razor code changes due to this fix https://github.com/jeremyevans/sequel/issues/742 that was released in Sequel 4.6.0", "created": "2015-03-13T08:33:00.000000"}, {"author": "557058:9d1d227b-434f-481d-8279-a026a8ca4bbd", "body": "Worth noting that it's pinned to the current version of sequel for a reason https://github.com/puppetlabs/razor-server/commit/ef958355d096061bda32173ed812cdc77c64eef6 so if that's not been worked around we can't just go to newer", "created": "2015-03-15T02:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "[~accountid:557058:9d1d227b-434f-481d-8279-a026a8ca4bbd]: I checked that 4.3 wasn't the latest suitable version", "created": "2015-03-17T02:03:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Even given the 4.9 upgrade mentioned above, it'd be helpful to get [this PR|https://github.com/puppetlabs/razor-torquebox/pull/1] merged into razor-torquebox, which handles this case at the TorqueBox level.", "created": "2015-07-10T01:39:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in https://github.com/puppetlabs/razor-torquebox/pull/8.", "created": "2015-11-04T02:43:00.000000"}], "components": ["Server"], "created": "2013-12-16T18:22:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2416ee99"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq94n:"}, {"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": "13/Mar/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_39056753706_*|*_10007_*:*_1_*:*_10116260534_*|*_10009_*:*_1_*:*_10213872854_*|*_5_*:*_1_*:*_1083588773_*|*_6_*:*_1_*:*_0_*|*_10006_*:*_1_*:*_3477"}], "description": "_Copy of [Issue 71|https://github.com/puppetlabs/razor-server/issues/71]:_\n\nIf the database is restarted while the server is running, the server reacts with a lot of whining about closed connections. It should handle that transparently.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10898", "fixedVersions": ["RAZOR 1.1.0"], "id": "10898", "issueType": "Improvement", "key": "RAZOR-70", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2015-11-04T02:43:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "The server should handle database restarts", "timeSpent": "PT0S", "updated": "2015-11-16T15:43:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "https://github.com/puppetlabs/razor-server/pull/194 - e6f7e16653fc207ba5d4f61ac52faf8f9e29f960", "created": "2014-04-25T10:42:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This is waiting on a couple of design decisions, [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91], in the pull request.", "created": "2014-04-30T10:38:00.000000"}], "components": ["QA", "Server"], "created": "2013-12-16T18:19:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2a24a46a"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq92v:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_5850293_*|*_1_*:*_2_*:*_11318321851_*|*_10007_*:*_2_*:*_386872319_*|*_3_*:*_2_*:*_301676076_*|*_5_*:*_1_*:*_3463774421_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147220897_*|*_10004_*:*_1_*:*_77099131"}], "description": "If users need to move, e.g., a network card from one system to another, they need to tell Razor that that is happening. To facilitate this, we need a command {{remove-hw-info-from-node}} that lets users selectively remove entries in {{node.hw_info}}", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11852", "fixedVersions": ["RAZOR 0.15.0"], "id": "11852", "issueType": "Improvement", "key": "RAZOR-69", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add a command to modify entries in a node's hw_info", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [], "components": ["Client", "QA"], "created": "2013-12-16T18:07:00.000000", "creator": "70121:cf857223-88c8-4fac-86de-b4cccadb4909", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@67db9c55"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6xr:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_488682812_*|*_1_*:*_1_*:*_9748655331_*|*_3_*:*_1_*:*_99857708_*|*_5_*:*_1_*:*_4672758125_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_691636329"}], "description": "_Copy of [Issue 12|https://github.com/puppetlabs/razor-client/issues/12] by [bodepd|https://github.com/bodepd]:_\n\nI can get help that shows a list of subcommands with\n\nbq. razor help\n\nor\n\nbq. razor -h\n\nI get the same output when I try to get help for a specific subcommand using\n\n  razor help create-policy\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11633", "fixedVersions": ["RAZOR 0.15.0"], "id": "11633", "issueType": "Improvement", "key": "RAZOR-68", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "70121:cf857223-88c8-4fac-86de-b4cccadb4909", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Cannot get help for a specific subcommand", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "\n_[daniel-pittman|https://github.com/daniel-pittman] said:_\n\nI don't think that is the correct behaviour: it should handle various errors differently. eg: most of the 400 space should never be retried because the server indicated \"this request can never be successfully completed without modification\" (eg: 415 unsupported media type, 400 invalid request)\n\nSome of the 500 space can be retried (eg: 503 service unavailable, 500 internal server error -- perhaps), but other parts likely shouldn't (eg: 501 not implemented, 505 HTTP version not supported)\n\nAborting may or may not be the right response, but in most of those error cases our condition handler should be \"modify request before retry\", not \"retry\".\n", "created": "2013-12-16T17:32:00.000000"}], "components": ["Microkernel"], "created": "2013-12-16T17:31:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@74a13874"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysben:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_6895374939_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 5|https://github.com/puppetlabs/razor-el-mk/issues/5]:_\n\nThe client should never abort, especially not when it gets an error response from the server; instead it should just treat these as receiving a 'none' action, i.e. do nothing and try to check in again.", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "10897", "fixedVersions": [], "id": "10897", "issueType": "Improvement", "key": "RAZOR-67", "labels": [], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-03-06T12:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "The client should ignore error responses from the server", "timeSpent": "PT0S", "updated": "2014-03-06T12:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "MK extensions give people a way to add their own facts", "created": "2014-11-05T11:22:00.000000"}], "components": ["Microkernel"], "created": "2013-12-16T17:28:00.000000", "creator": "623c128750bb2b0070b6b349", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@367dd8e1"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hysbef:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "05/Nov/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_27971655210_*|*_6_*:*_1_*:*_0"}], "description": "_Copy of [Issue 17|https://github.com/puppetlabs/razor-el-mk/issues/17] reported by [eglute|https://github.com/eglute]:_\n\nAs per discussion: https://groups.google.com/forum/#!topic/puppet-razor/zdxEpSF2OXw\n\n    I think to get useful network information we would need the information about the real number of network (not lo) card and the type of connectivity on top of the current collected information.\n\n    Anything I can do to help with this?\n\nAbsolutely. Write a custom fact or facts that export the information\nyou want, and get them working. Document any dependencies. We can\neither ship those in Razor, or get them merged into upstream Facter,\nand then import that version into the MK.\n\nI would suggest, if you can accept the platform limitation, directly\nextracting the data from sysfs, which you can assume is mounted at\n/sys (since systemd requires that), and have no non-Ruby dependencies.\n(Obviously, Linux only, but in the context of our MK needs, \"works on\nFedora 19\" is sufficient\".)\n\nAlternately, write the facts, sit on them, and bug us to implement\nadding custom facts at runtime to the MK, a planned but not yet\nsketched or implemented feature. ;)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11851", "fixedVersions": [], "id": "11851", "issueType": "Improvement", "key": "RAZOR-66", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "623c128750bb2b0070b6b349", "resolution": "Won't Fix", "resolutionDate": "2014-11-05T11:22:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Extract data from sysfs (additional facts)", "timeSpent": "PT0S", "updated": "2014-11-05T11:22:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "RAZOR-307 will give users equivalent functionality", "created": "2014-09-02T16:59:00.000000"}], "components": ["Server"], "created": "2013-11-19T18:16:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7f6cb51"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hys0u7:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "02/Sep/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24788535397_*|*_6_*:*_1_*:*_0"}], "description": "In order to support third party integrations, we want to deliver event notifications through a WebHook style system: allow users to subscribe a URL endpoint they provide to a simple JSON notification system.\n\nBy design notifications contain the absolute minimum of data possible: typically, the event name, and the unique name of the node involved.  For example, an event notification sample:\n\n{ \"event\": \"node installer finished\", \"node\": \"node17\" }\n\nUsers are expected to treat these notifications as a trigger for fetching additional data as required to complete their integration (or use their cached data -- standard HTTP caching is supported.)\n\nNotification delivery must be reliable: we will retry delivery until the endpoint returns an HTTP 2xx status code, or we have made a few dozen attempts over 24 or so hours.\n\nWe don't propose to do any event aggregation on the server side, and we do not promise ordered delivery under any circumstances -- though we generally aim for in-order (but potentially concurrent) delivery under normal circumstances.\n\nI would entertain adding timestamps to event notifications if someone had a good reason for them, and could explain how they could effectively be used in a concurrent, distributed world.  In practice I expect this to mean that events only trigger data fetching, which is the correct client behaviour.  (Consider: was there a subsequent change to the node that has not yet delivered the event?  Entirely possible.  You should check if the state matches expectations or not yourself.)\n\nBy design the event notifications are as simple as possible: it is almost impossible to perform effective content negotiation before sending the message to the endpoint, which compels us to minimize the risk of data changes.  By pushing thin event notifications, and allowing the client to fetch the data they require we make it easier for content negotiation to happen, and more efficient overall.  (Consider: with client fetch, the client can use standard caching solutions to reduce network traffic and server load, in exchange for risking missed updates, as needed.)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11050", "fixedVersions": [], "id": "11050", "issueType": "New Feature", "key": "RAZOR-65", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Won't Fix", "resolutionDate": "2014-09-02T16:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Implement webhook style event notification system for nodes", "timeSpent": "PT0S", "updated": "2014-09-02T16:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a2383cac-f799-49a4-8b30-0d737d991e23", "attachments": [], "comments": [{"author": "557058:a2383cac-f799-49a4-8b30-0d737d991e23", "body": "Sorry for the delay.  I've added 'libarchive-dev' to list of Jenkins slave prereqs, so it should be pulled in on all test slaves now.  The -dev package should also pull in the appropriate libarchive$ver library.\n\n[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629], can you verify that this gets you what you need?", "created": "2013-11-20T10:44:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Thanks, this is resolved now.  The test suite runs happily.  (...by which I mean, runs to completion and reports errors that are unrelated to the machine setup. :)", "created": "2013-11-20T10:57:00.000000"}], "components": [], "created": "2013-11-15T15:19:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4e9cc087"}, {"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|hyqqqn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_331367428_*|*_3_*:*_1_*:*_84117466_*|*_10009_*:*_1_*:*_824109_*|*_5_*:*_1_*:*_17973744905_*|*_6_*:*_1_*:*_0"}], "description": "Razor depends on loading `libarchive.so` to be able to unpack ISO images.  This makes that a platform dependency that isn't resolved in the git repository, needed in order to run the tests. :(\n\nThis is available in the `libarchive-devel` package on EL platforms, or `libarchive${version}` on Debian and derivatives.  https://github.com/puppetlabs/puppetlabs-razor/blob/master/manifests/libarchive.pp contains the details to satisfy this on various platforms, which should help.\n\nSince this is an OS platform dependency, unless we do something painful (eg: with rpm2cpio, or ar) we have to have it installed externally.  Shouldn't conflict with anything.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11235", "fixedVersions": [], "id": "11235", "issueType": "Bug", "key": "RAZOR-63", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2013-11-20T10:57:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Add `libarchive-dev` or platform equivalent to Razor test nodes", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "I disagree with the change of priority on this bug. If the documentation is not updated then QA is blocked on testing Windows. It is critical that this be solved before QA starts test execution on the Razor test plan.", "created": "2013-11-19T11:27:00.000000"}, {"author": "557058:3da95088-202d-4082-a15a-eb2e812f2578", "body": "[~accountid:557058:151c148a-2bb4-4fdc-9320-df94e73b0363] is testing still blocked on this? I gathered from [~accountid:623e7ac51c7f6a00704b2aab]'s latest status report that Razor is being tested heavily at this point...", "created": "2014-01-21T07:43:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] this is the bug I was talking about in our meeting. It would be nice to get traction on this documentation sometime this week.", "created": "2014-01-21T11:38:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "G'day Ryan.  Here are some instructions that are hopefully simple enough for you to follow.  Please let me know immediately when you get stuck on one of the steps, and include the full output of the command that doesn't go exactly as expected in your response.  Please also maintain an exact snapshot of the VM you test this on at the time.  Finally, please make sure you test this on a machine that is accessible to me so I can investigate the issue immediately, rather than waiting six hours for it to be reproduced.\n\nTo work around the incompatibility between some (but not all) Windows DVD images, and the libarchive code used in Razor to unpack them, perform the following steps:\n\n1. Have a normal installation of Razor ready to go, up to the point that you are ready to create the Windows repository.  Make sure this is working correctly, eg, by creating a repository with a Linux CD or DVD image.\n2. If desired, verify that your Windows DVD or CD image actually requires this effort, by trying to create a repository using it.  The Razor system will emit log messages indicating that the task of unpacking the repository has been pushed into the background.  If you do this, it will be necessary to delete the repository if unpacking fails.  (eg: the logs show that unpacking needs to be retried.)\n3. Assuming that it failed, substitute a working CD or DVD image for the Windows image in your repository creation.  (eg: the one you verified worked in step one.)\n    - keep the rest of the details (eg: name it \"windows whatever\", etc, etc) the same.\n4. Delete all the files inside the \"windows\" repository you just created.  This will be under the configured ISO root, named in a similar fashion to the repository name.  It should hopefully be clear which directory is which.  DO NOT DELETE THE REPOSITORY DIRECTORY, JUST THE CONTENT OF THE DIRECTORY!\n5. Install the `p7zip` or `p7zip-full` package for your platform, with ISO image support\n6. Use `7z x .../windows.iso` to unpack the Windows image into the repository you just cleared out.\n7. Test Windows.\n\nAlternately, at step five you can use any mechanism that allows you access to the content of the image.  For example, you could mount the CD or DVD image using the standard mount(1) Linux command, and then use cp(1) to copy the files into the repository, or you could use another tool than 7zip to extract the content of the image.\n\nIt is absolutely not required to use 7zip.  This may not be the easiest tool to advise users to access, especially as I don't know what the correct package name for ISO support is on all platforms, or even if it is available.  (eg: it varies, and some distributions only put it in a variant package.)", "created": "2014-01-22T14:50:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "[~accountid:557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629] Thanks for the info!", "created": "2014-01-22T15:26:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "For [~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91], and [~accountid:557058:3da95088-202d-4082-a15a-eb2e812f2578], I think that we are better off fixing the actual bug (eg: can't unpack the image, and have no fallback strategy) than trying to document this work-around, which is horrible, and will eventually break if users codify it into their workflow.  There are a number of ways, including adding a \"manual unpack\" option to repo creation, that would address this perfectly.", "created": "2014-01-22T16:12:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "The easier option in my opinion was to mount the ISO and copy the contents to the broken repo. I will update my test plan to reflect the exact commands I used for the work-a-round.", "created": "2014-02-11T14:45:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "Added to Windows info in Wiki.", "created": "2014-02-26T12:03:00.000000"}], "components": ["DOCS"], "created": "2013-11-14T19:17:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@422bc904"}, {"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|hyqqpj:"}, {"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_*:*_1014130479_*|*_10009_*:*_1_*:*_1286244477_*|*_4_*:*_1_*:*_4933596324_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1725565826"}], "description": "The documentation for working around the libarchive / Windows DVD issue needs to be clearer:\n\nhttps://github.com/puppetlabs/razor-server/wiki/Installing-windows\n\n{panel:title=Excerpt}\nNext, create the repository from your Windows installer. This is done in the usual way; unfortunately, I found that my Windows DVD image triggered a bug in libarchive that prevented unpacking. {color:blue}To fix that I cheated -- created the repo with a dummy image, then used 7zip to unpack the Windows ISO image without going through libarchive.{color} This took advantage of my knowledge that this is not going to be noticed by Razor, and that is unlikely to change before that bug is addressed.\n{panel}\n\nCould you please document the work-a-round in clear numbered steps with exact commands and external software needed?", "environment": "Windows", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11586", "fixedVersions": [], "id": "11586", "issueType": "Bug", "key": "RAZOR-61", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-02-26T12:03:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Work-a-round for Creating Windows Repository Needs More Details", "timeSpent": "PT0S", "updated": "2014-06-19T11:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "144000", "aggregatetimeoriginalestimate": "144000", "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "First: investigate alternatives, including\n\n* suid helper to lo mount\n* 7zip\n* ubootin\n* talk to upstream libarchive\n* libguestfs", "created": "2014-03-06T11:58:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Currently, the error log in `razor repos $name errors` will show something like:\n\n{noformat}\n       exception: RuntimeError\n       message: Ignoring out-of-order file @19 (README.TXT) 51200 < 55296\n{noformat}", "created": "2014-09-02T18:00:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T18:00:00.000000"}, {"author": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "body": "This bug found with windows 8 that is not supported in Razor 1.0, I'd like to keep it open if razor will support windows 8 and windows 2008 in the future releases. Please close it again if it is not the case or windows 8 is not important enough to be supported in Razor.next.\n\nNote that this bug is not happening with windows 2012 which is the only windows OS supported in Razor 1.0", "created": "2015-05-13T10:41:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Thanks [~accountid:557058:639cd954-0530-45e8-ba35-7be3297421a0]. It does not appear that we have expanded platform support on the immediate roadmap. If we do, we will re-open this issue.", "created": "2015-05-13T11:39:00.000000"}], "components": ["Server"], "created": "2013-11-14T19:09:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2126afa1"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqqf:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "13.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_46993872893_*|*_4_*:*_1_*:*_3846148_*|*_6_*:*_2_*:*_59698671"}], "description": "By design, libarchive only works on streaming archives.  Unfortunately, this means that an ISO image can be impossible to unpack: if there are references to data later in the image, libarchive will fail to unpack it.\n\nThe Windows 8 DVD tested by Daniel, unfortunately, includes these forward references -- meaning that it can't be unpacked using libarchive.\n\nWe need some sort of solution for this process that will let us unpack any ISO image, including images with forward references, or otherwise allow users to reasonably create that repository from arbitrary ISO images.  (eg: handle failure from libarchive in a reasonable fashion, using a fallback or something.)", "environment": "Windows", "epicLinkSummary": null, "estimate": "PT144000S", "externalId": "11570", "fixedVersions": [], "id": "11570", "issueType": "Bug", "key": "RAZOR-60", "labels": [], "originalEstimate": "PT144000S", "parent": "10943", "parentSummary": "Windows support in Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Won't Fix", "resolutionDate": "2015-05-13T11:39:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "By design, \"libarchive\" Prevents Unpacking of Windows Images", "timeSpent": "PT0S", "updated": "2015-05-13T11:39:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "We need to make sure our installer can serve a PowerShell install script for Windows", "created": "2014-07-30T09:50:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Tracked by https://github.com/puppetlabs/razor-server/pull/248.", "created": "2014-08-26T17:48:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Fixed in razor-server commit 88b6e9a.", "created": "2014-08-26T18:00:00.000000"}], "components": ["Server"], "created": "2013-11-14T17:54:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@539de5ad"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypvcv:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "30/Jul/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_2_*:*_60127_*|*_1_*:*_1_*:*_22699402998_*|*_10007_*:*_2_*:*_411160191_*|*_3_*:*_1_*:*_360878327_*|*_5_*:*_2_*:*_12638419824_*|*_6_*:*_1_*:*_0"}], "description": "If a user wants to deploy a Windows node with Razor and then provision the node with the built-in Puppet broker the process will fail because there is not support for Windows currently.\n", "environment": "Windows", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10895", "fixedVersions": ["RAZOR 0.16.0"], "id": "10895", "issueType": "New Feature", "key": "RAZOR-59", "labels": [], "originalEstimate": "PT0S", "parent": "10943", "parentSummary": "Windows support in Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-08-26T18:00:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Puppet Broker for Razor does not Support Windows", "timeSpent": "PT0S", "updated": "2015-01-06T16:26:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "This page on the Wiki explains the setup: https://github.com/puppetlabs/razor-server/wiki/Installing-windows\n\nPlease let us know what information is missing/unclear in that.", "created": "2013-11-14T16:09:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "The link provided by David contains the information necessary to deploy Windows via Razor.", "created": "2013-11-14T16:48:00.000000"}], "components": ["DOCS"], "created": "2013-11-14T15:53:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@240a7772"}, {"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|hyrzdr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "14/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3225234_*|*_6_*:*_2_*:*_76238"}], "description": "h1. Description\n\nIf a user wants to deploy Windows with Razor there exists no documentation that will guide the user on the process. This prevents QA from testing the feature for the Razor tech preview.\n\nh2. Expect\n\nDocumentation for Razor should include clear steps on how to deploy ESXi using Razor.\n\nh2. Actual\n\nNo documentation exists at all for Razor deployment of Windows.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11569", "fixedVersions": [], "id": "11569", "issueType": "Improvement", "key": "RAZOR-58", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2013-11-14T16:48:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "No Documentation Exists for Windows Deployment with Razor", "timeSpent": "PT0S", "updated": "2014-01-06T17:28:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "I don't understand what documentation is actually needed here.  Instead of spending effort on a three paragraph version of the three word sentence \"I need documentation\", could we get some information about *what* you actually found hard to understand from the current documentation?  Without that I am going to close this ticket.", "created": "2013-11-19T11:04:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "This [document|https://docs.google.com/a/puppetlabs.com/document/d/1a2jCyV-_YxRhuOtMIP0nC_erUtijjUO0FbX2hKPQSVo/edit#] implies that there are special installers for both ESXi and Windows. Currently the Razor [wiki|https://github.com/puppetlabs/razor-server/wiki] documents the special considerations needed for Windows installation, but ESXi is not mentioned anywhere on the wiki. The expectation is that there will be a step-by-step guide for ESXi installation for a end user to follow. If ESXi does not require a specialized installer than the requirements need to be updated to reflect that situation.", "created": "2013-11-19T11:24:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "OK.  There are no special requirements for the ESXi installer.  I am sorry you were confused by that document.  I can't figure out what needs to be adjusted to make that clearer, but you would be welcome to do so yourself.\n\nAt this point Razor is aimed at technically skilled users, willing to alpha/beta test software that is under heavy development.  The expectation that we have substantial end-user focused documentation on software that not only may, but is expected to, change is not entirely reasonable, I feel.", "created": "2013-11-19T11:33:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "I agree with Daniel. Even with fully actualized documentation, we don't provide step-by-step for external products. We will be clear about what's needed, and we can point to installation steps in that products' documentation. If there are any tips specific to installing for Razor, those are nice to include. ", "created": "2013-11-19T12:30:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "FWIW, there are currently *not* any special tips or problems that I am aware of -- though as we develop those I will absolutely document them. :)", "created": "2013-11-19T14:14:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "Okay good, I will use the same methodology to install ESXi as I would to install a Linux OS (CentOS 6) in my documentation.", "created": "2013-11-19T14:20:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I think Ryan's issue here is really valuable for our docs effort, in that people are probably more inclined to lump all the Linux installers together in their minds and look at ESXi and Windows as slightly separate.\n\nFor the product documentation, we should make sure we have an explicit statement that all installers are 'simple' (and Linux like) I added a couple of sentences on the Wiki in an attempt to do that: https://github.com/puppetlabs/razor-server/wiki/Getting-started", "created": "2013-11-20T07:24:00.000000"}], "components": ["DOCS"], "created": "2013-11-14T15:46:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@135924bc"}, {"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|hyqqov:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_416805949_*|*_6_*:*_1_*:*_0"}], "description": "h1. Description\n\nIf a user wants to deploy ESXi with Razor there exists no documentation that will guide the user on the process. This prevents QA from testing the feature for the Razor tech preview.\n\nh2. Expect\n\nDocumentation for Razor should include clear steps on how to deploy ESXi using Razor.\n\nh2. Actual\n\nNo documentation exists at all for Razor deployment of ESXi.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11413", "fixedVersions": [], "id": "11413", "issueType": "Bug", "key": "RAZOR-57", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Won't Fix", "resolutionDate": "2013-11-19T11:33:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "No Documentation Exists for ESXi Deployment with Razor", "timeSpent": "PT0S", "updated": "2014-06-19T11:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:a2383cac-f799-49a4-8b30-0d737d991e23", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Thanks, this is fixed now.", "created": "2013-11-15T15:15:00.000000"}], "components": ["Server"], "created": "2013-11-13T17:33:00.000000", "creator": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@52b9aafb"}, {"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|hyrz5r:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "15/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_154387807_*|*_3_*:*_1_*:*_6903439_*|*_10009_*:*_1_*:*_3220550_*|*_5_*:*_1_*:*_18390291237_*|*_6_*:*_1_*:*_0"}], "description": "In order to test razor-server, we need to have a PostgreSQL database instance that permits connections via TCP.  This implies setting md5 auth over TCP and giving a username and password, unless you want to potentially permit unlimited impersonation.\n\nOptimally this would be a freshly created database for each test run, but a single database is barely tolerable while we don't yet have platform coverage.", "environment": "public jenkins \"bundler\" tag", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11809", "fixedVersions": [], "id": "11809", "issueType": "Task", "key": "RAZOR-55", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "resolution": "Fixed", "resolutionDate": "2013-11-15T15:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Provide PostgreSQL database for testing", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "This item was mainly for Daniel and David as they developed Razor in early stages. Commands are documented as part of Razor docs.", "created": "2014-02-26T10:44:00.000000"}], "components": ["DOCS"], "created": "2013-11-13T17:04:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3bbd62bc"}, {"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|hyqqpr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_1108611550_*|*_6_*:*_1_*:*_0"}], "description": "h1. Description\n\nThe use of a Razor server requires a command-line application called the \"razor-client\". A user must configure many core elements of the Razor server using this command-line application. The documentation currently has references to its use in the [Getting started|https://github.com/puppetlabs/razor-server/wiki/Getting-started] area, but there is not a complete list of all the functionality of the \"razor-client\".\n\nh2. Expect\n\nThe documentation should clearly state all the available functionality of the \"razor-client\".\n\nh2. Actual\n\n* Currently there are only references to the \"razor-client\" in the [Getting Started|https://github.com/puppetlabs/razor-server/wiki/Getting-started] documentation which only shows the bare minimum usage of the application.\n* There is not place in the documentation where every sub-command and associated options are detailed for the \"razor-client\"\n\nh2. Suggestions\n\n* There should be a dedicated page explaining all the sub-commands and options for the \"razor-client\".\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11300", "fixedVersions": [], "id": "11300", "issueType": "Improvement", "key": "RAZOR-53", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Critical", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Fixed", "resolutionDate": "2014-02-26T10:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor Client Commands Not Fully Documented", "timeSpent": "PT0S", "updated": "2014-06-19T11:12:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Ryan, it would be super-helpful if you could drop the artificial three part headings and just describe your problem, then any suggestions you have for improvement.  At the moment you repeat a lot of information between the first two sections, and obscure the relationship between your suggestions and the actual issue they are related to.\n\nRegarding the issue: this is highly desirable in the longer term, but is wildly premature for a project that is still under active development and is being exposed to alpha/beta testers with the expectation that they will be competent to diagnose and fix code level issues in the project.\n\nThis is *NOT* an end user product at this point in time.  I would like to have it get there, but that is some time away yet.  End user focused documentation like you outline here would be a large burden to write -- especially \"without assumptions of knowledge\" -- and even more burden to maintain as deployment and structure change over time.\n\nThere are several major changes in the near future -- real packaging, better guidance in razor-client for command availability and arguments, likely repo interaction/format changes, addition of \"generator\" like functionality replacing existing hard-coded behaviour, IPMI power management support, a move from implicit to explicit bound-state and a shift from installer-as-owner to installer-as-process.  These all make significant changes that would require substantial documentation for end users, and potentially complete rewrites of the \"assume nothing\" documentation you request here.\n\nI am going to bump down the priority of this ticket to reflect the actual state of the project.", "created": "2013-11-19T18:32:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "This is another ticket that was really intended for the eng team. Policy is currently documented, and new eng/documentation processes will cover pre-docs and doc requirements for additional content.", "created": "2015-01-20T11:44:00.000000"}], "components": ["DOCS"], "created": "2013-11-13T15:55:00.000000", "creator": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@497dc40c"}, {"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|hyqqpz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_1112735588_*|*_6_*:*_1_*:*_0"}], "description": "h1. Description\n\nThe use of a Razor server requires \"policy\" configuration files to be written by the end user, but there is not documentation on how to create a policy.\n\nh2. Expect\n\nThe documentation should clearly state the format of the JSON \"policy\" and include details on specific elements of the \"policy\" along with their intended function.\n\nh2. Actual\n\n* Currently there are only references to the \"policy\" files in the [Getting Started|https://github.com/puppetlabs/razor-server/wiki/Getting-started] documentation and a template.\n* The elements of the \"policy\" files are not explained anywhere in documentation.\n\nh2. Suggestions\n\n* There should be a dedicated page explaining the format of the Razor \"policy\" file as well as detailed descriptions of all the elements available in the policy file.\n* The \"tags\" element of the \"policy\" file should have extra details considering that this element controls how Razor determines which machines will be provisioned.\n* In the installation and configuration of the Razor server document there should be specific information on how to create a policy from a template.\n\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11585", "fixedVersions": [], "id": "11585", "issueType": "Improvement", "key": "RAZOR-52", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "resolution": "Done", "resolutionDate": "2015-01-20T11:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Razor Policy Configuration Not Documented", "timeSpent": "PT0S", "updated": "2015-01-20T11:44:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Fixed in commit a0e18445", "created": "2013-11-15T17:14:00.000000"}], "components": [], "created": "2013-11-12T10:09:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@62dc17e0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyry2v:"}, {"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_*:*_284684170_*|*_3_*:*_1_*:*_31059_*|*_5_*:*_1_*:*_18383120563_*|*_6_*:*_1_*:*_0"}], "description": "Go through the code and make sure that\n\n* we log everything to one file\n* that logging is reasonable configurable (i.e, log level can be set somewhere)\n* that what we log is reasonably helpful\n", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "10893", "fixedVersions": [], "id": "10893", "issueType": "Improvement", "key": "RAZOR-22", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2013-11-15T17:14:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Clean up logging on the server", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [], "components": ["Server"], "created": "2013-10-23T15:49:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2fbf5c97"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqm7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_126502_*|*_3_*:*_1_*:*_2319498864_*|*_5_*:*_1_*:*_18059435469_*|*_6_*:*_1_*:*_0"}], "description": "Add the ability to install Windows with Razor.\n", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "11232", "fixedVersions": [], "id": "11232", "issueType": "Story", "key": "RAZOR-32", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2013-11-19T11:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Installer for Windows", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "144000", "aggregatetimeoriginalestimate": "144000", "assignee": "557058:40232c77-9d9b-410c-9f53-90adbf41eeb9", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Have we actually given up on doing this entirely, and sticking with F19/F20?  I vote for this.", "created": "2013-11-19T18:39:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "For the tech preview, yes", "created": "2013-11-20T07:37:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] does this seem like something we want to do before GA? I'm not sure we want to ship based on a Fedora that will go EOL relatively soon compared to PE.", "created": "2015-01-06T10:37:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I agree that this change would be very good to make before GA - I'd actually rank it higher than getting cfacter into the MK.\n\nSeeing how F19 is now EOL and we therefore need to rebuild the MK anyway, we should just rebuild it on CentOS 7", "created": "2015-01-06T14:19:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] can you work with [~accountid:557058:40232c77-9d9b-410c-9f53-90adbf41eeb9] on this?", "created": "2015-01-08T10:44:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I am also more than happy to talk to [~accountid:557058:40232c77-9d9b-410c-9f53-90adbf41eeb9] and help him understand what I was thinking when I wrote the stuff in https://github.com/puppetlabs/razor-el-mk", "created": "2015-01-08T16:49:00.000000"}, {"author": "623c0ad4d32a94006a6494f3", "body": "Talked this over with Scott, and we decided it has no actual Docs impact.", "created": "2015-01-21T18:18:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] could you create sub-tasks for this work? ", "created": "2015-01-29T11:12:00.000000"}], "components": ["Microkernel"], "created": "2013-10-07T16:22:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "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 Razor microkernel is based on Centos 7."}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c1b4ac"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hypb7r:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management Services"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "null_*:*_1_*:*_0_*|*_1_*:*_3_*:*_40525897058_*|*_5_*:*_1_*:*_10652044752_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_83078227_*|*_10005_*:*_1_*:*_1388517353"}], "description": "This will allow us to punt MK issues caused by HW incompatibility to the customer's OS\n\nIt remains to be seen how much of an issue that really is compared to the current Fedora base of the MK.\n\nAnother quite likely source of support headaches is the iPXE firmware which is not covered by this issue (and for which I am not sure what the best plan of attack for support is)\n\nAs a PE Developer, I want the Razor microkernel to be based on a long-life supported operating system that is supported, so that I can continue to maintain it from a security and stability perspective.\n\n", "epicLinkSummary": null, "estimate": "PT144000S", "externalId": "10979", "fixedVersions": ["RAZOR 1.0"], "id": "10979", "issueType": "Story", "key": "RAZOR-48", "labels": [], "originalEstimate": "PT144000S", "parent": null, "parentSummary": null, "priority": "Blocker", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2015-02-05T17:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Rebase microkernel to CentOS/RHEL", "timeSpent": "PT0S", "updated": "2015-06-09T01:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "144000", "aggregatetimeoriginalestimate": "144000", "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [], "components": ["Microkernel"], "created": "2013-10-07T16:16:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@47db212"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq96n:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_12948893536_*|*_6_*:*_1_*:*_0"}], "description": "parity with old Razor in terms of fact reporting (incude lshw facts, hopefully w/o actually using lshw)\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT144000S", "externalId": "11845", "fixedVersions": ["RAZOR 0.14.1"], "id": "11845", "issueType": "Improvement", "key": "RAZOR-49", "labels": [], "originalEstimate": "PT144000S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Done", "resolutionDate": "2014-03-06T12:11:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Parity of microkernel fact collection with old Razor", "timeSpent": "PT0S", "updated": "2014-03-06T12:11:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimespent": "57600", "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "This is impossible to estimate, as it is a placeholder for working with the community to identify what improvements are needed to make this work in the real world.", "created": "2013-11-19T11:09:00.000000"}], "components": ["Server"], "created": "2013-10-07T16:12:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4891970c"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqlz:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_3096325367_*|*_3_*:*_1_*:*_3113544863_*|*_5_*:*_1_*:*_15550223245_*|*_6_*:*_1_*:*_0"}], "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "11833", "fixedVersions": [], "id": "11833", "issueType": "Improvement", "key": "RAZOR-47", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2013-12-18T12:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Finish ESX installer", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": [], "worklogs": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "startDate": "2013-10-10T15:11:00.000000", "timeSpent": "PT57600S"}]}, {"affectedVersions": [], "aggregatetimeestimate": "86400", "aggregatetimeoriginalestimate": "86400", "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:623e7ac8562ab90069f9ed9b]: let me know what your thoughts are on this and whether we should address that for Milestone 2 or later", "created": "2014-03-06T09:48:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:623e7ac8562ab90069f9ed9b] bump .. please clarify how important this sort of builtin IP address management is", "created": "2014-06-24T07:19:00.000000"}, {"author": "623e7ac8562ab90069f9ed9b", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] This is a P0 to me. In our user research IPAM was a pretty universal problem, and I think for us to be viable we need to figure out some way to solve the problem. It doesn't have to be a full-blow IPAM, but between puppet and razor, we need to have a recommendation on how we allow customers to move their provisioned boxes from the provisioning network to their production network with the right addresses. ", "created": "2014-06-24T08:40:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "Since this functionality is available via custom hooks, I'm closing this until the need for something further is demonstrated.", "created": "2018-04-02T10:40:00.000000"}], "components": ["Server"], "created": "2013-10-02T18:25:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@267724bc"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrn9b:"}, {"fieldName": "Scrum Team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:select", "value": "Node Management"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Jun/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_13364651657_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_62837301803_*|*_10005_*:*_1_*:*_65725347662"}], "description": "Some users use the current Razor as a poor man's DHCP: Razor allocates a static IP address from a predefined pool when the node is installed, and configures the node to use static networking using that IP address. (Never mind that the old code base was full of horrifying races around this)\n\nSince this seems to be somewhat popular, we should introduce the explicit notion of an IP address pool that can be connected to a policy; when a node is bound to such a policy, an address is allocated (atomically!) from the pool for use by the node.\n\nThe pool itself needs to only carry enough information to set up static (IPv4) networking: range of IP addresses to allocate from, netmask, gateway and possibly DNS server(s)\n\n*In Scope*\n* Document use case via hook and metadata configuration ", "epicLinkSummary": null, "estimate": "PT86400S", "externalId": "11628", "fixedVersions": [], "id": "11628", "issueType": "Story", "key": "RAZOR-26", "labels": [], "originalEstimate": "PT86400S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2018-04-02T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "IP address pools for nodes", "timeSpent": "PT0S", "updated": "2018-04-02T10:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Is this meaningfully different to just shipping a pg_dump capture of the database?", "created": "2013-09-26T12:47:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Yes: it's basically a dump of the DB w/o node information", "created": "2014-03-06T09:52:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "This seems like an Epic in scope, which should be broken down into engineering stories to define effort level. I'm updating to that effect.\n", "created": "2014-12-23T18:04:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This seems like a similar use case to\u00a0RAZOR-383, with just a difference of implementation. I think the linked ticket is a more elegant solution than periodically updating the database (especially since this complicates change-making). I'm going to close this ticket in favor of the other approach.", "created": "2018-04-02T11:46:00.000000"}], "components": ["Server"], "created": "2013-09-23T17:45:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6eed25e4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Name", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-label", "value": "Import/export provisioning setup in its entirety"}, {"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": "QA Contact", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:userpicker", "value": "557058:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrkgn:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_142711299027_*|*_6_*:*_1_*:*_0"}], "description": "Provide API to import/export all the objects involved in determining what goes on a node, e.g. so users can store it in VCS and update it by importing a completely new setup.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11455", "fixedVersions": [], "id": "11455", "issueType": "Epic", "key": "RAZOR-37", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Duplicate", "resolutionDate": "2018-04-02T11:46:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Import/export provisioning setup in its entirety", "timeSpent": "PT0S", "updated": "2018-04-02T11:46:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "144000", "aggregatetimeoriginalestimate": "144000", "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Currently, Razor consists of two artifacts:\n\n* the Torquebox tarball http://torquebox.org/release/org/torquebox/torquebox-dist/3.0.0/torquebox-dist-3.0.0-bin.zip (this includes jruby and an init script)\n* the Razor tarball http://links.puppetlabs.com/razor-server-latest.zip\n\nThe puppetlabs-razor module can be used to install both. Additional (external) dependencies are:\n\n* a JVM (the Torquebox tarball already contains a JRuby)\n* a user/database in PostgreSQL\n* PXE booting infrastructure\n\nIn terms of installation, it's probably best to build one package each for TB and Razor, and ship the puppet-razor module. Users will be responsible themselves for creating the DB and setting up their PXE booting infrastructure.\n", "created": "2013-11-11T15:49:00.000000"}, {"author": "557058:b6301e26-c165-42d0-ab3a-59124339555e", "body": "I believe all of the components are complete here. Please correct me if I'm wrong.", "created": "2014-01-13T15:12:00.000000"}], "components": [], "created": "2013-09-23T17:25:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3a378241"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqnb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "13/Jan/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9079923417_*|*_3_*:*_1_*:*_592500372_*|*_5_*:*_1_*:*_13292870892_*|*_6_*:*_1_*:*_0"}], "description": " - Packaging\n - Init script\n - Document running mgmt API via SSL, restricting node API ", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT144000S", "externalId": "11288", "fixedVersions": [], "id": "11288", "issueType": "Story", "key": "RAZOR-45", "labels": [], "originalEstimate": "PT144000S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-01-13T15:12:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Basic delivery work", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "288000", "aggregatetimeoriginalestimate": "288000", "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "This might be as easy as distinguishing between destructive and nondestructive tasks, and performing the latter also on nodes that are marked as 'installed'", "created": "2014-02-25T14:55:00.000000"}], "components": ["Server"], "created": "2013-09-23T17:23:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3f661364"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq96v:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29719948723_*|*_6_*:*_1_*:*_0"}], "description": "Make it possible for users to perform BIOS/firmware updates", "epicLinkSummary": null, "estimate": "PT288000S", "externalId": "11223", "fixedVersions": [], "id": "11223", "issueType": "Story", "key": "RAZOR-31", "labels": [], "originalEstimate": "PT288000S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2014-09-02T16:55:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "BIOS/firmware updates", "timeSpent": "PT0S", "updated": "2014-09-02T16:55:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "432000", "aggregatetimeoriginalestimate": "432000", "assignee": null, "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "We should consider using PubSubHubbub, rather than inventing our own publish/subscribe HTTP notification system.  I am not remotely convinced that it would be a better tool, but at least worthy of consideration.", "created": "2013-09-26T12:40:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Added a note that Dell want this also.  Meanwhile, this claims that RAZOR-35 blocks it, and I don't think that actually *is*.", "created": "2013-11-20T17:58:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "RAZOR-307 will give users equivalent functionality", "created": "2014-09-02T16:58:00.000000"}], "components": ["Server"], "created": "2013-09-23T17:22:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@111200b3"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq96f:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29720170281_*|*_6_*:*_1_*:*_0"}], "description": " - generate events at certain points of a node's lifecycle (e.g., node discovered, policy bound to node, ...)\n - allow users to define callbacks and node actions in response to events\n - allow external systems to interfere with node's lifecycle (e.g., wait with provisioning until CMDB has set supplemental node data)\n\nThis is part of what VMW and Dell would want from Razor", "epicLinkSummary": null, "estimate": "PT432000S", "externalId": "11005", "fixedVersions": [], "id": "11005", "issueType": "Story", "key": "RAZOR-38", "labels": [], "originalEstimate": "PT432000S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Duplicate", "resolutionDate": "2014-09-02T16:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Generate node lifecycle events", "timeSpent": "PT0S", "updated": "2014-09-02T16:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "We will implement hooks (RAZOR-307) instead", "created": "2014-09-02T16:59:00.000000"}], "components": ["Server"], "created": "2013-09-23T17:19:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@7bbbb600"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq967:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_29720434311_*|*_6_*:*_1_*:*_0"}], "description": "This is part of what VMW would want Razor to do\n\n - API's to store/manipulate user-defined data with nodes\n - Queue node actions for each node that will be executed by Microkernel\n - Each node gets a 'mailbox' of pending actions\n - Report on progress/success/failure of such actions", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10977", "fixedVersions": [], "id": "10977", "issueType": "Story", "key": "RAZOR-35", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2014-09-02T16:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Node actions", "timeSpent": "PT0S", "updated": "2014-09-02T16:59:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "144000", "aggregatetimeoriginalestimate": "144000", "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2013-09-23T17:14:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@a0e4f66"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrkhr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_40415146315_*|*_6_*:*_1_*:*_0"}], "description": "Allow database configuration via the API / a web interface\n\nThe goal being that the server starts, then you configure database, and migration happens transparently", "epicLinkSummary": null, "estimate": "PT144000S", "externalId": "11828", "fixedVersions": [], "id": "11828", "issueType": "Story", "key": "RAZOR-27", "labels": [], "originalEstimate": "PT144000S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-01-04T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Install/update UI", "timeSpent": "PT0S", "updated": "2015-01-04T10:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "We should think seriously about implementing pcap-style capture of communication for iPXE, IPMI, and similar interactions, if at all possible.  The more we can capture protocol transactions the easier it will be to reproduce them.", "created": "2013-09-26T12:41:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The first and last bullet are done.\n\nThe other two bullets are tracked in RAZOR-80", "created": "2014-01-06T18:44:00.000000"}], "components": ["Server"], "created": "2013-09-23T17:11:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5c57eae0"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqr3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_9081204785_*|*_5_*:*_1_*:*_13884931927_*|*_6_*:*_1_*:*_0"}], "description": " - clean up what/where we log\n - status for command progress/failure (e.g., indicate whether install media import succeeded/failed)\n - common facility for reporting errors of async commands (some sort of job/task object for each command that will carry error messages)\n - server checks validity of its config on startup\n\n\n", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "11626", "fixedVersions": [], "id": "11626", "issueType": "Story", "key": "RAZOR-25", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-01-06T18:44:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Enable diagnosing server issues", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "288000", "aggregatetimeoriginalestimate": "288000", "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "[~accountid:557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91] is this still a to-do? could you comment on priority?", "created": "2014-12-23T18:02:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Let's just close this - the actual commands that are needed should be tracked with individual tickets.", "created": "2015-01-02T11:57:00.000000"}], "components": ["Server"], "created": "2013-09-23T17:04:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@58a69cfc"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrip3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_40415758574_*|*_6_*:*_1_*:*_0"}], "description": "More operations to manage the provisioning setup through the API\n\n - update existing objects (need to define how that relates to nodes currently provisioning against those objects)\n - \"Import/update microkernel\" command\n - API to manage server config\n", "epicLinkSummary": null, "estimate": "PT288000S", "externalId": "11454", "fixedVersions": [], "id": "11454", "issueType": "Story", "key": "RAZOR-29", "labels": [], "originalEstimate": "PT288000S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-01-04T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "More server commands", "timeSpent": "PT0S", "updated": "2015-01-04T10:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "288000", "aggregatetimeoriginalestimate": "288000", "assignee": "623e7ac8562ab90069f9ed9b", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "If we go down this path we should attack \"a standard\" image format, rather than a reasonable one, on the basis that this is really interesting only when it enables integration with some third party solution.  (Unless we ship a polaroid-style image management tool, in which case we should support that.)", "created": "2013-09-26T12:49:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:623e7ac8562ab90069f9ed9b] please let us know whether/when you think this should be addressed", "created": "2014-03-06T09:54:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Jonas Rosland's CoreOS installer (commit 223c54e8) provides enough of a pattern for this.", "created": "2014-11-05T11:20:00.000000"}], "components": ["Server"], "created": "2013-09-23T16:58:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@476b1190"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyrkh3:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_14147753918_*|*_6_*:*_1_*:*_0_*|*_10004_*:*_1_*:*_21086790150"}], "description": "Make it possible to install machines from some reasonable image format, rather than driven via kickstart/preseed et.al.", "epicLinkSummary": null, "estimate": "PT288000S", "externalId": "11004", "fixedVersions": [], "id": "11004", "issueType": "Story", "key": "RAZOR-30", "labels": [], "originalEstimate": "PT288000S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2014-11-05T11:20:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Image based installation", "timeSpent": "PT0S", "updated": "2014-11-05T11:20:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Fixed upstream in 05aab508", "created": "2013-10-21T16:49:00.000000"}], "components": ["Server"], "created": "2013-09-23T16:57:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2246e26f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqmn:"}, {"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_*:*_2417544129_*|*_3_*:*_1_*:*_1194344_*|*_5_*:*_1_*:*_20548232780_*|*_6_*:*_1_*:*_0"}], "description": "Razor right now requires that users import install media into the server; many people run their own package repos/mirrors. It should be possible to control installation against such repos w/o the need for importing install media.\n", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "10975", "fixedVersions": [], "id": "10975", "issueType": "Story", "key": "RAZOR-36", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2013-10-21T16:49:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Use existing package repos for installation", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "288000", "aggregatetimeoriginalestimate": "288000", "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "ESX is in 0.12.0, unclear how important the others are", "created": "2014-01-10T15:27:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Yes, I thought I had made the changes to put this into the backlog .. lmk what else I should have done", "created": "2014-01-21T12:16:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Whatever additional installers/tasks are needed should be added through individual tickets targetted at specific OS's.", "created": "2014-06-24T07:15:00.000000"}], "components": ["Server"], "created": "2013-09-23T16:56:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3b45719e"}, {"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|hyslc7:"}, {"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_*:*_23638744768_*|*_6_*:*_1_*:*_0"}], "description": "Were in old Razor:\n\n - ESX\n - Xen\n - SLES\n\nNice to have: CoreOS and OSv\n\n\n", "epicLinkSummary": null, "estimate": "PT288000S", "externalId": "11841", "fixedVersions": [], "id": "11841", "issueType": "Story", "key": "RAZOR-28", "labels": [], "originalEstimate": "PT288000S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2014-06-24T07:15:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "More Razor installers", "timeSpent": "PT0S", "updated": "2014-06-24T07:15:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "576000", "aggregatetimeoriginalestimate": "576000", "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Nobody has asked for this formally", "created": "2014-06-24T06:51:00.000000"}], "components": ["Server"], "created": "2013-09-23T16:52:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@e044a2e"}, {"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|hyrkgv:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_23637536822_*|*_6_*:*_1_*:*_0"}], "description": " - DRAC/iLO/other virt", "epicLinkSummary": null, "estimate": "PT576000S", "externalId": "11827", "fixedVersions": [], "id": "11827", "issueType": "Story", "key": "RAZOR-23", "labels": [], "originalEstimate": "PT576000S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2014-06-24T06:51:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Power Control - supplemental", "timeSpent": "PT0S", "updated": "2014-06-24T06:51:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "86400", "aggregatetimeoriginalestimate": "288000", "assignee": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "So, it turns out that I was planning on using a gem that is GPLv3 licensed, no exceptions, and so is not available for our platform.  In consequence we will need to develop our own wrappers for ipmitool and/or other IPMI solutions.  Having investigated the various libraries it is my opinion that it will be faster -- still slow, but faster -- to develop this based on execution of command line tools rather than integration using FFI to the library directly.  (All the libraries are very, very heavily callback based.)", "created": "2013-11-19T14:42:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I agree - it also limits the damage that a bug in ipmitool can do to the Razor server", "created": "2013-11-20T08:16:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "We will only do IPMI control via ipmitool\n\nWhat's missing are commands to power nodes on/off via the Razor API", "created": "2014-01-06T18:38:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Featurewise, this is now complete", "created": "2014-01-21T12:14:00.000000"}, {"author": "557058:151c148a-2bb4-4fdc-9320-df94e73b0363", "body": "Feature verified as implemented in build PE 3.2.0-rc0-1228-gb026c4e. (Razor 0.14.1)", "created": "2014-02-07T12:10:00.000000"}], "components": ["Server"], "created": "2013-09-23T16:52:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@1c55a5fc"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqlr:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "19/Nov/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_79552103_*|*_null_*:*_1_*:*_0_*|*_1_*:*_1_*:*_9081924728_*|*_10007_*:*_1_*:*_431922_*|*_3_*:*_1_*:*_1273046963_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1150326085"}], "description": "Overall goal is to allow Razor (and users, through the API) to turn machines on/off\n\n - Determine HW support matrix of where we'd need to do Power Control\n - Define model for user interaction with node's power\n - Support IPMI and vSphere initially (?)", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT86400S", "externalId": "11625", "fixedVersions": ["RAZOR 0.14.1"], "id": "11625", "issueType": "Story", "key": "RAZOR-24", "labels": [], "originalEstimate": "PT288000S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-02-07T12:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Power Control - initial", "timeSpent": "PT0S", "updated": "2014-02-07T12:10:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "288000", "aggregatetimeoriginalestimate": "288000", "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "I am not convinced that we actually *need* the lshw based facts, at least shipping with our core product", "created": "2013-09-26T12:44:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "server-side support for updates implemented in https://github.com/puppetlabs/razor-server/pull/200 - 2063ce82e21798222f52f79d7042d66b63cab882\n\nclient side support will be forthcoming in a separate patch", "created": "2014-04-30T14:02:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "client-side support implemented in https://github.com/puppetlabs/razor-el-mk/pull/22 - eb172c73418aca86df246b65dfc04bb47c6fff6c", "created": "2014-05-02T16:02:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] this will require documentation on how to put together an MK update", "created": "2014-05-05T11:28:00.000000"}, {"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Prior to merge, https://github.com/daniel-pittman/razor-server/blob/send-custom-code-to-mk/doc/mk-extension.zip.md will show you the documentation I wrote that is part of the source tree, aimed at covering that ground.", "created": "2014-05-05T11:31:00.000000"}], "components": ["DOCS", "Microkernel", "QA"], "created": "2013-09-23T16:48:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@48ab4728"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq1on:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "13.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_788107574_*|*_1_*:*_1_*:*_18903835253_*|*_10007_*:*_1_*:*_1545073875_*|*_3_*:*_1_*:*_187801242_*|*_5_*:*_1_*:*_1542688780_*|*_6_*:*_1_*:*_0"}], "description": " - add user-defined facts at runtime (send them from server)\n - add extra binary package to MK at runtime\n - hook into fact sync from existing puppet master\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT288000S", "externalId": "11563", "fixedVersions": [], "id": "11563", "issueType": "Story", "key": "RAZOR-42", "labels": ["docs_reviewed"], "originalEstimate": "PT288000S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-29T16:08:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Better fact collection from microkernel", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "288000", "aggregatetimeoriginalestimate": "144000", "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "This is done except for the second bullet, which is not critical, and will be tracked in RAZOR-79", "created": "2014-01-06T18:35:00.000000"}], "components": ["Microkernel"], "created": "2013-09-23T16:45:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@49bdd134"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqnj:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_4303898946_*|*_3_*:*_1_*:*_4778310622_*|*_5_*:*_1_*:*_13885483540_*|*_6_*:*_1_*:*_0"}], "description": " - Robustness (behavior under network flakiness)\n - Accept list of commands from server rather than just one\n - DHCP on all interfaces", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT288000S", "externalId": "11404", "fixedVersions": [], "id": "11404", "issueType": "Story", "key": "RAZOR-41", "labels": [], "originalEstimate": "PT144000S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-01-06T18:35:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Microkernel improvements", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [], "components": ["Server"], "created": "2013-09-12T18:38:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@54887f1c"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyripb:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "24/Dec/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_41192386893_*|*_6_*:*_1_*:*_0"}], "description": "The server should have a simple JS-only UI that helps users/admins understand what is happening in their infrastructure. This UI should do things like\n\n - Show performance metrics/statistics about the server akin to what PuppetDB does\n - List some of the highlights of what nodes are doing\n - Provide a somewhat useful rollup of a node's log that helps understand how an installer is doing on it etc.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11622", "fixedVersions": [], "id": "11622", "issueType": "Story", "key": "RAZOR-20", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-01-02T11:58:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "The server should ship with a minimal UI", "timeSpent": "PT0S", "updated": "2015-01-02T11:58:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimeestimate": "144000", "aggregatetimeoriginalestimate": "144000", "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Moving to siren (https://github.com/kevinswiber/siren) or some other model that allows our data objects to specify which commands they currently accept -- and their parameters -- seems like the right direction to me.", "created": "2013-09-26T12:42:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:8f2288c8-aafd-4043-8c36-5121d7f0a7df] I'd appreciate your input on this", "created": "2014-03-06T09:59:00.000000"}], "components": ["Client", "QA"], "created": "2013-09-12T18:36:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a009aa4"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq92f:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_270304261_*|*_1_*:*_2_*:*_15180892246_*|*_10007_*:*_1_*:*_98048815_*|*_3_*:*_1_*:*_603157682_*|*_5_*:*_1_*:*_3463773066_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_147238982_*|*_10004_*:*_1_*:*_4148018156"}], "description": "Right now, the client is minimally usable; some of the issues it suffers from:\n\n - Listing a collection contains no details about the objects\n - More readable output for object details (node details are a particularly good example)\n - Help for users about available parameters for queries and commands\n\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT144000S", "externalId": "11562", "fixedVersions": ["RAZOR 0.15.0"], "id": "11562", "issueType": "Story", "key": "RAZOR-43", "labels": [], "originalEstimate": "PT144000S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-05-07T10:30:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Client usability: more comprehensive output and help", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "I investigated the libguestfs path with JRuby: using FFI to wrap the C library directly would be possible but substantial work.  Using the Ruby gem is out because it depends on a Ruby C level extension.  Using the libguestfs-java wrapper (presumably using JNI underneath) would be the sanest approach.\n\nUsing the FFI gem -- built in to JRuby -- to wrap libarchive looks like it would be substantially easier than wrapping libguestfs, because it provides correspondingly less capabilities.", "created": "2013-09-12T17:24:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Yes, I agree", "created": "2013-09-12T17:32:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "I switched the code to use bsdtar instead of 7zip, which at least stops the bleeding. Commit 90dd1ff3", "created": "2013-09-12T19:52:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The archive gem (https://github.com/erikh/archive) seems to be a reasonable FFI wrapper for libarchive", "created": "2013-09-13T21:58:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The code has been using libarchive for a while now. This is no longer relevant", "created": "2013-11-19T02:19:00.000000"}], "components": ["Server"], "created": "2013-09-12T17:21:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@28e03089"}, {"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|hyrinj:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5824626068_*|*_6_*:*_1_*:*_0"}], "description": "We need a reliable way to import ISO images; unfortunately, 7zip does not quite cut it, as it truncates file names that are longer than 64 characters: http://sourceforge.net/p/sevenzip/bugs/1055/\n\nOther options include loopback mounting via sudo (with all the annoying complications that come with sudo), using fuseiso (with all the annoying complications that come with FUSE), and libguestfs (with all the question marks around using it from Java)\n\nSee http://rwmj.wordpress.com/2010/05/05/tip-ways-to-extract-an-iso-without-needing-root/ for a rundown of options (from a while ago)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11452", "fixedVersions": [], "id": "11452", "issueType": "Bug", "key": "RAZOR-18", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Minor", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2013-11-19T02:19:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Need reliable way to import ISO images", "timeSpent": "PT0S", "updated": "2013-11-19T02:19:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Fixed by commit https://github.com/puppetlabs/razor-server/commit/05aab508adfe7b9171699ea1fd5166f043489450", "created": "2013-11-15T17:28:00.000000"}], "components": [], "created": "2013-09-12T15:39:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@17b476da"}, {"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|hyrifr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5539764277_*|*_5_*:*_1_*:*_18382293097_*|*_6_*:*_1_*:*_0"}], "description": "Besides importing ISO images, Razor should allow installing from repositories that are managed by something else.\n\nWe only need to associate the repo URL with a policy (or a number of URL's)", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11561", "fixedVersions": [], "id": "11561", "issueType": "New Feature", "key": "RAZOR-17", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2013-11-15T17:28:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Enable installation from repos", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T17:59:00.000000"}], "components": ["Server"], "created": "2013-09-12T15:19:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@e906c74"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyriev:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "12/May/15"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_52454412453_*|*_6_*:*_1_*:*_0"}], "description": "Currently, razor sets (via the policy) the password of a node, which then presumably gets used by the installer.\n\nRazor cares aboutthat because it might have to ssh into the node for broker handoff (or give credentials to the broker)\n\nIt would be much better if Razor dealt in ssh keys, made it easy to retrieve them and set up authorized_keys during install, and never worked with passwords.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11218", "fixedVersions": [], "id": "11218", "issueType": "New Feature", "key": "RAZOR-16", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T17:59:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Handling of password for root", "timeSpent": "PT0S", "updated": "2015-05-12T17:59:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "This was fixed by https://github.com/puppetlabs/razor-el-mk/commit/855a5e5b489558ec0aa5527a0767ba3d021e474c", "created": "2013-11-15T17:27:00.000000"}], "components": ["Microkernel"], "created": "2013-09-12T13:43:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@6a8b509"}, {"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|hyridr:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5546674007_*|*_5_*:*_1_*:*_18382365874_*|*_6_*:*_1_*:*_0"}], "description": "When a machine has two NIC's, but only eth1 is connected, the MK currently does not attempt to DHCP on that", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11560", "fixedVersions": [], "id": "11560", "issueType": "New Feature", "key": "RAZOR-14", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2013-11-15T17:27:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "DHCP on more than just eth0", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "This has been done with commit b8b6a4b4", "created": "2014-01-10T15:23:00.000000"}], "components": ["Server"], "created": "2013-09-12T13:42:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@39dbc772"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqon:"}, {"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_*:*_8378913542_*|*_3_*:*_1_*:*_1998726692_*|*_5_*:*_1_*:*_13551434167_*|*_6_*:*_1_*:*_0"}], "description": "We need a way to update the rule of an existing tag", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "11451", "fixedVersions": ["RAZOR 0.12.0"], "id": "11451", "issueType": "New Feature", "key": "RAZOR-13", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-01-10T15:23:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update an existing tag", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "Open question: What are the lifecycle states for a node?  How do these states relate to different OSes?", "created": "2014-03-20T11:53:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "This is related to some sort of mechanism or capability to communicate information back to the user.  This seems to be a common pattern of letting the user know what's happening and what they can do about it.", "created": "2014-03-20T11:55:00.000000"}, {"author": "623c12b6ee1b5a0070293582", "body": "Daniel volunteered to write down his understanding of this communication mechanism as an user story.  The team will review this story.", "created": "2014-03-20T11:58:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T14:54:00.000000"}], "components": ["Server"], "created": "2013-09-12T13:24:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@4c0a9087"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyridb:"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "20/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_52450161977_*|*_6_*:*_1_*:*_0"}], "description": "The details for a node should contain information on what the node is doing ('running_microkernel', 'finished_kickstart', 'running_postinstall', 'running_os' etc.)\n\nWe can derive that sort of information from a few things:\n\n - the node.boot_count which indicates where in the install process the node is\n - the stage name that is submitted with the stage_done_url\n - when/how often the node used /svc/boot resp. did /svc/stage-done\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11287", "fixedVersions": [], "id": "11287", "issueType": "New Feature", "key": "RAZOR-12", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T14:54:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Status tracking for nodes", "timeSpent": "PT0S", "updated": "2015-05-12T14:54:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "aggregatetimespent": "86400", "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The module http://forge.puppetlabs.com/puppetlabs/razor has been updated and covers the basics of this. If we need to cover more uses remains to be seen and will be tracked in different tickets.\n", "created": "2013-11-11T15:58:00.000000"}], "components": [], "created": "2013-09-12T13:17:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@617c3419"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqn3:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "3.0"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_2170592432_*|*_3_*:*_3_*:*_7858542208_*|*_5_*:*_1_*:*_13901409209_*|*_6_*:*_1_*:*_0"}], "description": "The existing Razor puppet modules make no sense with the new Razor; they need to be rewritten\n\nThe module should be set up for a few variations in deployment\n - DB variation (install pgsql/create db in existing pgsql/use external pgsql)\n - Run behind proxy which does SSL termination (httpd, nginx, ...)\n - Torquebox variations (install from scratch/use existing/fit into user's JBoss deployment)", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "11215", "fixedVersions": [], "id": "11215", "issueType": "Story", "key": "RAZOR-44", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-01-06T14:10:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Update Razor puppet modules", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": [], "worklogs": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "startDate": "2013-10-10T15:12:00.000000", "timeSpent": "PT86400S"}]}, {"affectedVersions": [], "assignee": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Recommended industry best practice is to use a dedicated network, possibly through a vlan, to segregate provisioning and production traffic.", "created": "2014-01-27T13:06:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "I have included some specific warnings about installing on a completely separate environment. Is this ticket about how to set things up when you are actually working with Razor on a production network? And if so:\n\n* Should we hold off on that information until Razor is out of tech preview, since we recommend that users not use it in production?\n* If you want to include specifics, can you please provide?", "created": "2014-02-26T12:43:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Removing this from Milestone 1 - while it is important to properly explain how to do this, it's not necessary for using Razor", "created": "2014-02-26T21:33:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "[~accountid:623c0ad4d32a94006a6494f3] Please check in with David and Scott about this ticket. It might just mean that you should add a note or warning to a spot in the docs. ", "created": "2015-01-06T12:44:00.000000"}, {"author": "557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1", "body": "[~accountid:557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4] We updated the api section with security information, but not /svc. Do we still want to pursue the request in this ticket?\n\nAnd if so, please provide info or let's discuss.", "created": "2015-03-25T15:42:00.000000"}, {"author": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "body": "This is tabled for now, outside the scope of GA. [~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1]: Do we have any guidance on setting up Razor in a dedicated network or VLAN, as Daniel suggests above? That would practically obviate this ticket.", "created": "2015-03-25T18:21:00.000000"}], "components": ["DOCS", "Server"], "created": "2013-09-12T13:17:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@42220089"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqof:"}, {"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": "1_*:*_1_*:*_6482579481_*|*_4_*:*_1_*:*_71465749494_*|*_6_*:*_1_*:*_0"}], "description": "The /svc URL space is used for node/server communication; we should give users some guidance on how to secure that with iptables, a frontend HTTP proxy or similar", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11002", "fixedVersions": [], "id": "11002", "issueType": "Task", "key": "RAZOR-10", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2016-03-02T16:36:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Document how to secure the /svc URL space", "timeSpent": "PT0S", "updated": "2016-03-02T16:36:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:e8c33ac7-f049-4d1a-92a9-dda72b9f1629", "body": "Various template rendering endpoints likely also need security -- the kickstart scripts and broker scripts could reveal secret information.", "created": "2013-09-26T12:42:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Those need to be available to the nodes, and there's really no way to secure that - users will therefore have to secure the /svc URL's through network-level security.", "created": "2013-11-12T10:03:00.000000"}], "components": ["Server"], "created": "2013-09-12T13:15:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3971a1f"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqmf:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "5.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "26/Sep/13"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_8380458346_*|*_3_*:*_1_*:*_1648778026_*|*_5_*:*_1_*:*_13901424656_*|*_6_*:*_1_*:*_0"}], "description": "Access to the management API needs to be authenticated.\n\nDetermine reasonable auth schemes and how they plug into people's existing auth (user/passwd, LDAP ?)", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "11839", "fixedVersions": [], "id": "11839", "issueType": "Story", "key": "RAZOR-40", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Major", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-01-06T14:09:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Authentication for the /api URL space", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "The commands collection introduced in 0.15.0 provides a command log - it's not full replication, but that should be covered/speced in a different ticket", "created": "2014-06-24T06:50:00.000000"}], "components": ["Server"], "created": "2013-09-12T13:15:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@3904f73"}, {"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|hyrid3:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_24600901451_*|*_6_*:*_1_*:*_0"}], "description": "Since commands are async, and we want to follow a CQRS pattern similar to PuppetDB, produce a log of commands issued against a server that can be used for replication, auditing etc.", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11825", "fixedVersions": ["RAZOR 0.15.0"], "id": "11825", "issueType": "New Feature", "key": "RAZOR-8", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-06-24T06:50:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Produce command log", "timeSpent": "PT0S", "updated": "2014-06-24T06:50:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:639cd954-0530-45e8-ba35-7be3297421a0", "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "* commands return a link to a 'command' entity\n* the command entity carries status and error information\n* ideally, store auditing information like the user performing the command, and times", "created": "2014-03-06T12:49:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Submitted in https://github.com/puppetlabs/razor-server/pull/168", "created": "2014-03-28T14:36:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "[~accountid:557058:745e5b4d-58ed-48ed-8daa-afe8b66453a1] The whole command mechanism and what they are needs to be documented", "created": "2014-05-05T16:59:00.000000"}], "components": ["DOCS", "QA", "Server"], "created": "2013-09-12T13:14:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2b8e9e73"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-83"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyq6vz:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "10008_*:*_1_*:*_1573952_*|*_1_*:*_1_*:*_15631937444_*|*_10007_*:*_1_*:*_953486102_*|*_3_*:*_1_*:*_1393794263_*|*_5_*:*_1_*:*_4672749599_*|*_6_*:*_1_*:*_0_*|*_10011_*:*_1_*:*_1277220496"}], "description": "Since commands are async, users need a way to determine whether their command has finished. There's two basic approaches:\n\n - Objects (e.g., image) carry a status and a monotonically increasing 'last-command' counter; when issuing a command, the response contains the counter and the user can wait for the image to go to status 'ready' and last-command >= whatever they were given\n - Have a notion of a job object that tracks the progress of each command; return Location of that job object with the response when each command is issued\n\nWe'll probably need a mix of both since the latter is much nicer for error tracking, reporting error details etc.\n", "epicLinkSummary": "Bucket for next high-level milestone", "estimate": "PT0S", "externalId": "11621", "fixedVersions": ["RAZOR 0.15.0"], "id": "11621", "issueType": "New Feature", "key": "RAZOR-7", "labels": ["docs_reviewed"], "originalEstimate": "PT0S", "parent": "11592", "parentSummary": "Bucket for next high-level milestone", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-04-23T10:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Expose command status through API", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "623c12b6ee1b5a0070293582", "body": "Need input from UX on how to handle that", "created": "2014-03-06T12:24:00.000000"}, {"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "If a policy matches whose repo isn't ready yet (because it is still being imported), take no action on that node as if no policy had matched.\n\nAlso, add an entry to the node's log that a match was made but no action was taken because the image wasn't ready.", "created": "2014-03-20T11:49:00.000000"}, {"author": "557058:e484fb55-2ddc-43a0-968e-11d70ae3153c", "body": "Closing as part of a mass close won't-fix. If this is inaccurate and this ticket is important to fix in the next release(s), please re-open and request prioritization.", "created": "2015-05-12T14:53:00.000000"}], "components": ["Server"], "created": "2013-09-12T13:10:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@65020742"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyricn:"}, {"fieldName": "Story Points", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:float", "value": "8.0"}, {"fieldName": "[CHART] Date of First Response", "fieldType": "com.atlassian.jira.ext.charting:firstresponsedate", "value": "06/Mar/14"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_52450999815_*|*_6_*:*_1_*:*_0"}], "description": "It is possible to do create-image, then immediately create-policy, and have a node bind to that policy even though the image might not be ready yet.\n\nOne solution would be to ignore policies whose images have not finished importing.\n", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "11450", "fixedVersions": [], "id": "11450", "issueType": "New Feature", "key": "RAZOR-6", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Won't Fix", "resolutionDate": "2015-05-12T14:53:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Handle dependency between create-image and create-policy", "timeSpent": "PT0S", "updated": "2015-05-12T14:53:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "For PE 3.2, we can use the init script that comes with the Torquebox binary distribution (and the puppet-razor module already plonks that into the right place)\n", "created": "2013-11-19T03:58:00.000000"}], "components": ["Server"], "created": "2013-09-12T12:44:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5464830d"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqnz:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_5847283264_*|*_5_*:*_1_*:*_18085281385_*|*_6_*:*_1_*:*_0"}], "description": "We need a SysV init script and systemd unit file for the usual suspects", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "11048", "fixedVersions": [], "id": "11048", "issueType": "New Feature", "key": "RAZOR-3", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-06-16T12:40:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Init script", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}, {"affectedVersions": [], "assignee": null, "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Jonas Rosland contributed one: commit 223c54e8", "created": "2014-11-05T11:21:00.000000"}], "components": ["Server"], "created": "2013-09-12T12:43:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@2dcf4d87"}, {"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:639cd954-0530-45e8-ba35-7be3297421a0"}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyric7:"}, {"fieldName": "[CHART] Time in Status", "fieldType": "com.atlassian.jira.ext.charting:timeinstatus", "value": "1_*:*_1_*:*_36200261580_*|*_6_*:*_1_*:*_0"}], "description": "Razor + CoreOS + Docker == something very cool\n\nInstaller itself should be easy, proper integration with Docker might be more of a headache", "epicLinkSummary": null, "estimate": "PT0S", "externalId": "10971", "fixedVersions": ["RAZOR 0.16.0"], "id": "10971", "issueType": "Story", "key": "RAZOR-2", "labels": [], "originalEstimate": "PT0S", "parent": null, "parentSummary": null, "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2014-11-05T11:21:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Installer for CoreOS", "timeSpent": "PT0S", "updated": "2015-01-06T16:05:00.000000", "votes": "1", "watchers": []}, {"affectedVersions": [], "assignee": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "attachments": [], "comments": [{"author": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "body": "Fixed in commit https://github.com/puppetlabs/razor-server/commit/a0e1844524f007f1995d540e6b7d6982b34e4d9c", "created": "2013-11-19T03:56:00.000000"}], "components": ["Server"], "created": "2013-09-12T12:41:00.000000", "creator": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "customFieldValues": [{"fieldName": "Sub-team", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Approvals", "fieldType": "com.atlassian.servicedesk.approvals-plugin:sd-approvals", "value": "com.atlassian.servicedesk.plugins.approvals.internal.customfield.ApprovalsCFValue@5a4e5f05"}, {"fieldName": "Epic/Theme", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:labels", "value": []}, {"fieldName": "Epic Link", "fieldType": "com.pyxis.greenhopper.jira:gh-epic-link", "value": "RAZOR-75"}, {"fieldName": "People Involved", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker", "value": []}, {"fieldName": "Flagged", "fieldType": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", "value": []}, {"fieldName": "Rank", "fieldType": "com.pyxis.greenhopper.jira:gh-lexo-rank", "value": "0|hyqqnr:"}, {"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_*:*_5847291468_*|*_5_*:*_1_*:*_18085408901_*|*_6_*:*_1_*:*_0"}], "description": "Logging is incredibly adhoc right now.\n\nTwo big issues:\n1) Cleanly document and set some guidelines for what goes into a node's log\n2) Make sure the server logs into the right places\n", "epicLinkSummary": "First reasonably complete milestone of Razor", "estimate": "PT0S", "externalId": "11838", "fixedVersions": [], "id": "11838", "issueType": "Story", "key": "RAZOR-1", "labels": [], "originalEstimate": "PT0S", "parent": "11589", "parentSummary": "First reasonably complete milestone of Razor", "priority": "Normal", "projectDescription": "<h3><a name=\"Welcometoyourproject\"></a>Razor</h3>\n<p>Razor consists of the following git repos:</p>\n<ul>\n  <li><a href=\"https://github.com/puppetlabs/razor-server\">Server</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-client\">Client</a></li>\n  <li><a href=\"https://github.com/puppetlabs/razor-el-mk\">Microkernel</a></li>\n  <li><a href=\"https://github.com/puppetlabs/puppetlabs-razor\n\"/>Puppet module</a></li>\n</ul>\n  ", "projectKey": "RAZOR", "projectLead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "projectName": "Razor", "projectType": "software", "projectUrl": null, "reporter": "557058:94d3052b-8fff-43b1-91b3-4cdcbc8fcd91", "resolution": "Fixed", "resolutionDate": "2013-11-19T03:56:00.000000", "status": "Closed", "statusCategory": "Done", "statuscategorychangedate": "11/Mar/23 9:13 AM", "summary": "Clean up logging", "timeSpent": "PT0S", "updated": "2014-06-16T12:40:00.000000", "votes": "0", "watchers": []}], "key": "RAZOR", "lead": "557058:09fbcf8b-9ff4-4dee-a188-c3fb45897af4", "name": "Razor", "template": "com.pyxis.greenhopper.jira:gh-simplified-scrum-classic", "type": "software", "url": "", "versions": [{"name": "RAZOR 0.11.0", "releaseDate": "2013-11-22", "released": true}, {"name": "RAZOR 0.12.0", "releaseDate": "2013-12-20", "released": true}, {"name": "RAZOR 0.13.0", "releaseDate": "2014-01-31", "released": true}, {"name": "RAZOR 0.14.0", "releaseDate": "2014-01-30", "released": true}, {"name": "RAZOR 0.14.1", "releaseDate": "2014-02-03", "released": true}, {"name": "RAZOR 0.15.0", "releaseDate": "2014-05-28", "released": true}, {"name": "RAZOR 0.15.1", "releaseDate": "2014-06-16", "released": true}, {"name": "RAZOR 0.15.2", "releaseDate": "2014-09-08", "released": true}, {"name": "RAZOR 0.16.0", "releaseDate": "2015-01-06", "released": true}, {"name": "RAZOR 0.16.1", "releaseDate": "2015-01-12", "released": true}, {"name": "RAZOR 1.0", "releaseDate": "2015-06-08", "released": true}, {"name": "RAZOR 1.0.1", "releaseDate": "2015-06-11", "released": true}, {"name": "RAZOR 1.1.0", "releaseDate": "2015-11-11", "released": true}, {"name": "RAZOR 1.2.0", "releaseDate": "2016-03-08", "released": true}, {"name": "RAZOR 1.3.0", "releaseDate": "2016-05-19", "released": true}, {"name": "RAZOR 1.4.0", "releaseDate": "2016-07-06", "released": true}, {"name": "RAZOR 1.5.0", "releaseDate": "2016-10-20", "released": true}, {"name": "RAZOR 1.6.1", "releaseDate": "2017-03-07", "released": true}, {"name": "RAZOR 1.7.0", "releaseDate": "2018-01-25", "released": true}, {"name": "RAZOR 1.7.1", "releaseDate": "2018-02-07", "released": true}, {"name": "RAZOR 1.8.1", "releaseDate": "2018-04-24", "released": true}, {"name": "RAZOR 1.9.2", "releaseDate": "2018-05-31", "released": true}, {"name": "RAZOR 1.9.3", "releaseDate": "2018-10-01", "released": true}, {"name": "RAZOR 1.9.4", "releaseDate": "2019-01-22", "released": true}, {"name": "RAZOR 1.9.5", "releaseDate": "2019-04-16", "released": true}, {"name": "razor-server 1.9.6", "releaseDate": "2019-08-28", "released": true}, {"name": "razor-client 1.9.4", "releaseDate": "2019-08-26", "released": true}, {"name": "razor-client 1.9.5", "releaseDate": "2019-08-30", "released": true}, {"name": "RAZOR Out-Of-Band", "releaseDate": "", "released": false}, {"name": "RAZOR 2.0", "releaseDate": "", "released": false}, {"name": "razor-server 1.9.7", "releaseDate": "", "released": false}, {"name": "razor-client 1.9.6", "releaseDate": "", "released": false}, {"name": "razor-el-mk 009", "releaseDate": "", "released": false}, {"name": "razor-el-mk 010", "releaseDate": "", "released": false}]}]}