Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes #19332 - Add welcome page when missing #4475

Merged
merged 1 commit into from Jan 31, 2018

Conversation

amirfefer
Copy link
Member

@amirfefer amirfefer commented Apr 20, 2017

Some pages are missing a welcome page.
I don't quite sure about the chosen icons.

Copy link
Contributor

@domcleal domcleal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other index pages that are missing welcome pages:

  1. /models
  2. /templates/provisioning_templates

<%= icon_text("globe", "", :kind => "fa") %>
</div>
<h1><%= _('Global Parameters') %></h1>
<p><%= _("Foreman can pass two types of parameters to Puppet via the ENC (External Node Classifier) interface - global parameters (accessible from any manifest),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should not be so Puppet-specific, global parameters have a wide range of other uses, e.g. in templates. I'd suggest removing all references to Puppet.

It would be better to indicate that adding global parameters here at the top level may allow them to be overridden elsewhere.

The references to class parameters are also irrelevant here.

<% content_for(:title, _("Global Parameters")) %>
<div class="blank-slate-pf">
<div class="blank-slate-pf-icon">
<%= icon_text("globe", "", :kind => "fa") %>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

list-ul or similar may also be appropriate, to represent key/value pairs.

<h1><%= _('Compute Profiles') %></h1>
<p><%= _("A compute profile is a way of expressing a set of defaults for VMs created on a specific compute resource
that can be mapped to an operator-defined label. This means an administrator can express,
for example, what “Small”, Medium” or “Large” means on all of the individual compute resources present for a given installation.") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Missing quotation mark around "Medium".
  2. I'd suggest replacing the Unicode quotation marks with regular " ones, or using the correct open/close Unicode quotation marks instead of only closing ones.

<h1><%= _('Partition Tables') %></h1>
<p><%= _("Partition templates are a subset of normal Provisioning Templates. They are handled separately because it is
frequently the case that an admin wants to deploy the same host template (packages, services, etc) with just
a different harddisk layout to account for different servers capabilities.") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Replace "harddisk" with either "disk" or "hard disk".
  2. "servers" should be "servers'" or "server"

</div>
<h1><%= _('Partition Tables') %></h1>
<p><%= _("Partition templates are a subset of normal Provisioning Templates. They are handled separately because it is
frequently the case that an admin wants to deploy the same host template (packages, services, etc) with just
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It'd be useful to state what they actually are (i.e. parts of provisioning templates that describe the partition layout), and not just the reasoning for their existence.

</div>
<h1><%= _('Smart Proxies') %></h1>
<p><%= _("The Smart Proxy is a project which provides a restful API to various sub-systems.
Its goal is to provide an API for a higher level orchestration tools (such as Foreman).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not useful here, better to state why they should be added in Foreman.

<h1><%= _('Smart Proxies') %></h1>
<p><%= _("The Smart Proxy is a project which provides a restful API to various sub-systems.
Its goal is to provide an API for a higher level orchestration tools (such as Foreman).
The Smart proxy provides an easy way to add or extended existing subsystems and APIs using plugins.") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. "Proxy", inconsistent with line above.
  2. Not too useful to describe the plugin capability here, it should focus on why it's managed in Foreman here.

</div>
<h1><%= _('Trends') %></h1>
<p><%= _("Trends in Foreman allow you to track changes in your infrastructure over time. It allows you to track both
Foreman related information and any puppet facts. The Trend pages give a graph of how the number of hosts with
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Capitalise "Puppet"
  2. s/give/provide/ or "show"

<h1><%= _('Trends') %></h1>
<p><%= _("Trends in Foreman allow you to track changes in your infrastructure over time. It allows you to track both
Foreman related information and any puppet facts. The Trend pages give a graph of how the number of hosts with
that value have changed over time, and the current hosts list.") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"and list the current hosts"

<h1><%= _('Smart Variables') %></h1>
<p><%= _("Smart variables are a tool to provide global parameters (key/value data), normally to your Puppet ENC,
depending on a set of rules. They are intended to be a stepping stone to full parameterized classes,
when the class hasn’t been parameterized or in special cases when a global parameter is desired") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing full stop.

@ohadlevy
Copy link
Member

ohadlevy commented May 6, 2017

@amirfefer ping?

@amirfefer
Copy link
Member Author

@domcleal Thanks for your review, I've added missing pages and fix inline comments, could you re-review please?

<%= icon_text("list-ul", "", :kind => "fa") %>
</div>
<h1><%= _('Global Parameters') %></h1>
<p><%= _("Foreman’s concept of parameters maps onto Puppet’s idea of default-scope parameters. Foreman allows us to define a hierarchy of parameter inheritance, where global parameters global parameters accessible from any manifest") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Fixes #19332 - Add welcome page when missing #4475 (comment) suggested removing the Puppet references, or at least emphasising their non-Puppet use in templates etc. I don't think listing Puppet first and "manifests" (Puppet manifests?) is useful to users.
  2. "global parameters global parameters" twice.
  3. Missing full stop.
  4. Reintroduced unicode apostrophe marks, use regular single quotes.

</div>
<h1><%= _('Smart Class Parameters') %></h1>
<p><%= _("Parameterized class support permits detecting, importing, and supplying parameters direct to classes which support it,
via the ENC and depending on a set of rules (Smart Matchers)") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing full stop.

<%= icon_text("info-circle", "", :kind => "fa") %>
</div>
<h1><%= _('Smart Class Parameters') %></h1>
<p><%= _("Parameterized class support permits detecting, importing, and supplying parameters direct to classes which support it,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"direct" should be "directly" or simply be left out.

</div>
<h1><%= _('Smart Proxies') %></h1>
<p><%= _("The Smart Proxy is a project which provides a RESTful API to various subsystems.
The Smart Proxy provides an easy way to add or extended existing subsystems, via
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#4475 (comment) remains unaddressed, unsure why the focus on plugins is here and not Foreman. This should explain what Foreman uses it for and why smart proxies are listed here, not about the capabilities of another project.

<h1><%= _('Smart Proxies') %></h1>
<p><%= _("The Smart Proxy is a project which provides a RESTful API to various subsystems.
The Smart Proxy provides an easy way to add or extended existing subsystems, via
configurable DHCP (ISC DHCP and MS DHCP Servers), DNS (Bind and MS DNS Servers), Puppet, etc.") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Remove listing of supported providers, this will become out of date.
  2. Unsure what "configurable DHCP, DNS" means?

<h1><%= _('Smart Variables') %></h1>
<p><%= _("Smart variables are a tool to provide global parameters (key/value data), normally to your Puppet ENC,
depending on a set of rules. They are intended to be a stepping stone to full parameterized classes,
when the class hasn’t been parameterized, or in special cases when a global parameter is desired") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#4475 (comment) is unfixed, missing full stop.

<%= icon_text("info-circle", "", :kind => "fa") %>
</div>
<h1><%= _('Hardware Models') %></h1>
<p><%= _("Hardware Model describes the hardware model of your hosts, including CPU class, Vendor class and general information") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. The first fragment doesn't quite make sense, should this be: "Hardware models describe the hardware types of your hosts"?
  2. Don't capitalise "Vendor".
  3. "General information" is unclear in this context, perhaps call them "other notes".
  4. Missing full stop.

<%= icon_text("info-circle", "", :kind => "fa") %>
</div>
<h1><%= _('Provisioning Templates') %></h1>
<p><%= _("The Provision Templates is the core of Foreman’s flexibility to deploy the right OS with the right options.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't make much sense, I'm not even sure what the point is. Can you rewrite it, perhaps to say that provisioning templates are used for provisioning and installation of operating systems?

</div>
<h1><%= _('Provisioning Templates') %></h1>
<p><%= _("The Provision Templates is the core of Foreman’s flexibility to deploy the right OS with the right options.
There are several types of template, along with a flexible matching system to deliver different templates to different Hosts.") %></p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove capitalisation of "hosts", say "hosts or host groups" too.

<% content_for(:title, _("Hardware Models")) %>
<div class="blank-slate-pf">
<div class="blank-slate-pf-icon">
<%= icon_text("info-circle", "", :kind => "fa") %>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should perhaps be laptop or server, something recognisable as a type of computer.

<% content_for(:title, _("Provisioning Templates")) %>
<div class="blank-slate-pf">
<div class="blank-slate-pf-icon">
<%= icon_text("info-circle", "", :kind => "fa") %>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be something representing a template, e.g. file-text.

@ohadlevy
Copy link
Member

@amirfefer ping?

@ohadlevy
Copy link
Member

@GregSutcliffe can you please have a look at this PR? thanks

@amirfefer
Copy link
Member Author

[test]

@amirfefer
Copy link
Member Author

[test upgrade]

ares
ares previously requested changes Nov 22, 2017
Copy link
Member

@ares ares left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR @amirfefer. I'm afraid text broken to multilines could cause problems during translating. I think we usually keep long lines in this case. So please remove \n like this

<% _("some
             second") %>

I left few other comments that should be addressed.

@waldenraines could you please do the grammar check when we have the final version of texts?

<%= icon_text("server", "", :kind => "fa") %>
</div>
<h1><%= _('Hardware Models') %></h1>
<p><%= _("HHardware models describe the hardware types of your hosts, including CPU class, vendor class and other notes.") %></p>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/HHard/Hard/ typo

<%= icon_text("table", "", :kind => "fa") %>
</div>
<h1><%= _('Partition Tables') %></h1>
<p><%= _("Partition templates are a subset of normal provisioning templates which describe the partition layout, with just
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's not necessarily a subset, it's a different kind of templates with slightly different capabilities

<%= icon_text("sitemap", "", :kind => "fa") %>
</div>
<h1><%= _('Smart Proxies') %></h1>
<p><%= _("The Smart Proxy provides an easy way to add or extended existing subsystems, via
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this should be rephrased, something like "Smart proy provides restful API to subsystems such as DNS, DHCP, TFTP that Foreman talks to"

<%= icon_text("info-circle", "", :kind => "fa") %>
</div>
<h1><%= _('Smart Variables') %></h1>
<p><%= _("Smart variables are a tool to provide global parameters (key/value data), normally to your Puppet ENC,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

smart variables are usually not global, they use the same rules as smart class parameters, the main difference is that they end up in different place in ENC so they end up in the same namespace as Parameters (global params, host params etc)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They are global from a Puppet perspective - that's what the Parameters block is. For Foreman they are both global and assigned to a class - If you try to have the same name in two smart vars, it'll clash even if they're assigned to different classes (I've no idea if that actually creates an error, but it won't work in the ENC for sure).

Getting all that nuance into a short text line is hard though....

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct. How about this then?

Smart variables are a tool to provide parameters (key/value data), to a global namespace of a puppet run through your Puppet ENC,

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not bad. Maybe change to a global namespace of a puppet run through to to the top-level (global) scope of your Puppet ENC?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@ares ares dismissed domcleal’s stale review November 22, 2017 17:19

I don't think Dominic plans to continue with the review, please readd review if I misunderstood

@amirfefer
Copy link
Member Author

Thanks @ares, @GregSutcliffe
Could you have a second look, please?

@ares
Copy link
Member

ares commented Dec 18, 2017

@amirfefer tests seems to be failing, most likely rebase would help, would you mind rebasing the PR?

Copy link
Member

@dLobatog dLobatog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Back to WoC because of tests

@waldenraines
Copy link

@amirfefer ping

@amirfefer
Copy link
Member Author

amirfefer commented Jan 17, 2018

Rebased .

Edit: Katello test failure seems unrelated.

@ares would you mind to look again?

@waldenraines
Copy link

[test katello]

@waldenraines
Copy link

@dLobatog @ares tests are now passing, any other requests?

@dLobatog dLobatog dismissed ares’s stale review January 31, 2018 15:00

No multi-line issues in sight

@dLobatog dLobatog merged commit a00419f into theforeman:develop Jan 31, 2018
@dLobatog
Copy link
Member

Thanks @amirfefer @waldenraines

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
8 participants