Changed license nagging to a modal dialog with license status aware text and a form for updating the license key. Form provides JSON validation via CodeMirror.
Set minimum page sizing heights and row counts on inventory detail and jobs. On both pages we calculate container heights and page row counts based on the viewport width and height.
Add hintText:"some helpful text here" to a field in a form definition object. Form generator will display the text inside the <label> element on a new line with the fa-info-circle icon in a pleasant grey color.
Add aw-drop-file directive to a textarea form element. User can drop a file (any file) onto the field and the contents as text will be placed in the textarea. Added this directive to credentials ssh_key field.
Change handling of labelBind in form generator. It now adds ng-bind directive to a <span> element inside <label> rather than to <label> directly. This stops Angular from wiping out anything else we may want to add inside <label> like help icon.
Added 'Loading...' message to each table. Loading message is turned on at initial page load. It is turned off at the last possible second after completion of page rendering. It is turned on before each API call and back off after the API call completes.
Fixed issue that occurred while launching event viewer from host event viewer. For a given host event on the host event viewer dialog, click the status link. The event viewer dialog failed to appear if there was only a single event.
Show more data on the Results tab. Any items not explicitly listed in the event viewer form object are now added to the Results tab, excluding ansible_facts. Also added a JSON tab to show the full event object, again excluding ansible_facts.
Show more data on the Results tab. Any items not explicitly listed in the event viewer form object are now added to the Results tab, excluding ansible_facts. Also added a JSON tab to show the full event object, again excluding ansible_facts.
Look for local_config.js. If not found, load config.js. Set debug_mode to true and make other config changes locally without affecting production builds.
Pause live events by clicking on a task or play. Restart live events by clicking the play button. Fixed issues with event viewer and host viewer dialogs.
Now enforcing the minimum of 8 characters (as it has always been stated in the help text). When the strength score is >=
required strength the meter turns green (as it always has) and now goes to 100% of the width. Previously it only went to
about 50% of screen width.
Fixed active accordion style background. The active accordion now has a grey background. Inactive and hovered accordion
headers now have a white background.
Brought forward change from 1.4.11 to keep angular from attempting to bind to jinja vars that might appear in task names or pre formated output. Removed use of transparent background from jqueryui overrides.
Job submission now removes the spinner once the job is started. It is also 'socket aware'. In the event the socket connection is unavailable on SCM updates and inventory sync runs it prompts the user with a dialog letting them know to hit the refresh button. Came up with a way to 'monitor' socket connections. On the main connection and on the Jobs page connecgtions we now check the connection every 3 seconds. If the connection status is error, or if the status returns 'connnecting' 2x in a row, we kill and restart the connections.
Added schedules to the #/sockets page, so that we can see what events are being emitted via the schedules endpoint. Added a schedule_events socket to the Jobs controller. Once we have 'created', 'changed', 'deleted', etc. events coming throught the schedules endpoint the schedules widget on the jobs page should automatically update. Changed 'Dashboard' back to 'Home' in menus. Fixed event viewer bug on jobs detail page.
Finished job event viewer dialog. Centered next/prev buttons with a custom javascript resize calc. Page size is 50 with an 'endless scroll' in both directions.
If host result does not have a host_id value, don't present the edit host link. Broke the status message out into its own grid column to improve spacing/readability.
Added scope.$apply to each drawing function in hopes of stopping the blockage or pause that seems to occur on page refresh. Seems to be working. Added ability to pause live event processing by clicking a play or task. Now just need a way to restart it.
Switched endless scroll paging to use next URL provided by API. Since the event host_name might be the same for all host events, attempting to use __gt doesn't work reliably anyway, and it turns out there's no need to rebuild the URL on the scroll down event. Now sorting host results by host_name + item to cover cases where host_name is always the same.
Handling play and task parallel arrival seems to be working now. Removed 'search' and 'status' labels from search dialogs. Job events viewer now displays JSON objects as nested tables. Re-ordered host event viewer fields, adding host name, and fixing links so that only the status column is clickable.
Job events are now being processed in parallel on the server side, which means tasks and plays may arrive before events begin arriving. The UI may be receiving events for play 'A' while plays 'B' and 'C' have arrived. The UI now has to know that it the arriving events belong to play 'A', and it should consider play 'A' to be the active play. Plays 'B' and 'C' should not be displayed until events begin arriving for them.
Started adding logic to support parallel processing of plays/tasks. Fixed summary host lit not loading when there is no active play and/or active task.
Now using jobs/N/job_host_summaries.host_name when building host summary list.
For reasons yet to be determined the status field on job_tasks and possibly job_plays may contain 'Token is expired' rather than a numeric return code (i.e. 400, 401, 403, etc.). Changed process_errors to look for this condition and trigger session timeout behavior.
Fixed host link on event viewer and tooltip on dialog.
Tightened up job tab page row calculation. It now assumes rows will not hit 47px height until width drops to below 1350px.
Angular logging now respects the debug_mode paraemter in the js/config.js file. When set to true $log.debug messages will appear in the browser console. Set to false and they no longer appear.
Fixed ability to restart automatic scroll-to-bottom while live events are streaming. When user scrolls up during live event processing automatic scroll-to-bottom stops. If user scrolls all the way to bottom, it now restarts.