flamenco-manager.git
7 months agoPrevent 'dist/' path prefix in SHA256sum file master
Sybren A. Stüvel [Tue, 12 Nov 2019 13:26:09 +0000 (14:26 +0100)]
Prevent 'dist/' path prefix in SHA256sum file

7 months agoMarked 2.7 as released in CHANGELOG.md v2.7
Sybren A. Stüvel [Tue, 12 Nov 2019 12:50:11 +0000 (13:50 +0100)]
Marked 2.7 as released in CHANGELOG.md

7 months agoShaman component shouldn't expose its JWT Auther object
Sybren A. Stüvel [Tue, 12 Nov 2019 12:02:18 +0000 (13:02 +0100)]
Shaman component shouldn't expose its JWT Auther object

The JWT Auther object should be passed to whoever needs it directly, and
not obtained via the Shaman component.

This also fixes a bug where the dashboard wouldn't function when the
Shaman was disabled.

7 months agoRemoved some debug logging
Sybren A. Stüvel [Tue, 12 Nov 2019 12:00:51 +0000 (13:00 +0100)]
Removed some debug logging

7 months agoUpgrade golang.org/x/crypto for ACME protocol v2
Sybren A. Stüvel [Tue, 12 Nov 2019 11:51:11 +0000 (12:51 +0100)]
Upgrade golang.org/x/crypto for ACME protocol v2

I also added the ACME directory URL to the log message, so that it can
be verified to be the v2 URL (and not the deprecated v1 URL).

This fixes T71444.

8 months agoUpdate README.md with info on how to see logs
Francesco Siddi [Sat, 9 Nov 2019 12:25:01 +0000 (13:25 +0100)]
Update README.md with info on how to see logs

8 months agoDisplay VM size in next to dynamic pool ID
Francesco Siddi [Fri, 8 Nov 2019 01:59:46 +0000 (02:59 +0100)]
Display VM size in next to dynamic pool ID

The information allows the user to understand which VMs are used in
the pool

8 months agoMarked version 2.6 as released today in CHANGELOG v2.6
Sybren A. Stüvel [Tue, 22 Oct 2019 16:12:46 +0000 (18:12 +0200)]
Marked version 2.6 as released today in CHANGELOG

8 months agoIgnore /dist/ directory
Sybren A. Stüvel [Sat, 19 Oct 2019 14:38:57 +0000 (16:38 +0200)]
Ignore /dist/ directory

8 months agoUpdated changelog
Sybren A. Stüvel [Sat, 19 Oct 2019 13:25:40 +0000 (15:25 +0200)]
Updated changelog

8 months agoUpdated example configuration file to current version + more useful defaults
Sybren A. Stüvel [Sat, 19 Oct 2019 13:21:13 +0000 (15:21 +0200)]
Updated example configuration file to current version + more useful defaults

8 months agoShaman: enable garbage collection by default
Sybren A. Stüvel [Sat, 19 Oct 2019 13:20:58 +0000 (15:20 +0200)]
Shaman: enable garbage collection by default

8 months agoStreamlined default variables
Sybren A. Stüvel [Sat, 19 Oct 2019 13:20:20 +0000 (15:20 +0200)]
Streamlined default variables

8 months agoAllow Shaman server to be disabled
Sybren A. Stüvel [Sat, 19 Oct 2019 13:20:07 +0000 (15:20 +0200)]
Allow Shaman server to be disabled

8 months agoStreamlined default values of variables
Sybren A. Stüvel [Sat, 19 Oct 2019 12:58:51 +0000 (14:58 +0200)]
Streamlined default values of variables

The default config now resembles the Blender Institute less, and only
uses one shared storage location. This makes it easier to recognise the
goal of variables. Also, I made sure that the Shaman variable is also
configured, and that it matches the other Shaman configuration parameters.

8 months agoSettings: only write 'disableSecurity: true' to config, omit `false`
Sybren A. Stüvel [Sat, 19 Oct 2019 12:57:08 +0000 (14:57 +0200)]
Settings: only write 'disableSecurity: true' to config, omit `false`

The `disableSecurity` is a negative boolean (I generally would prefer
`enableSecurity`), and I find `disableSecurity: false` confusing to
read. However, `disableSecurity: true` looks more omnious to me than
`enableSecurity: false`, which is why I keep the naming as-is.

8 months agoWebsetup: added a few notes about Shaman
Sybren A. Stüvel [Sat, 19 Oct 2019 12:55:26 +0000 (14:55 +0200)]
Websetup: added a few notes about Shaman

8 months agoWebsetup: fixed Shaman configuration in 'simple mode'
Sybren A. Stüvel [Sat, 19 Oct 2019 12:55:15 +0000 (14:55 +0200)]
Websetup: fixed Shaman configuration in 'simple mode'

8 months agoWebsetup: fixed bug where all variables were marked as 'separate audiences'
Sybren A. Stüvel [Sat, 19 Oct 2019 12:54:48 +0000 (14:54 +0200)]
Websetup: fixed bug where all variables were marked as 'separate audiences'

8 months agoRemove unused constant
Sybren A. Stüvel [Sat, 19 Oct 2019 12:17:45 +0000 (14:17 +0200)]
Remove unused constant

11 months agoIncreased HTTP read timeout from 15 to 600 seconds v2.5.1
Sybren A. Stüvel [Thu, 18 Jul 2019 09:28:23 +0000 (11:28 +0200)]
Increased HTTP read timeout from 15 to 600 seconds

11 months agoIgnore filesystem syncing errors when copying files
Sybren A. Stüvel [Wed, 17 Jul 2019 15:25:27 +0000 (17:25 +0200)]
Ignore filesystem syncing errors when copying files

Not every filesystem supports this (like SMB), so we sync if we can, but
ignore when we can't.

13 months agoMarked version 2.5 as released today v2.5
Sybren A. Stüvel [Tue, 28 May 2019 14:00:09 +0000 (16:00 +0200)]
Marked version 2.5 as released today

13 months agoWeb setup: prevent removal of variables
Sybren A. Stüvel [Tue, 28 May 2019 13:52:53 +0000 (15:52 +0200)]
Web setup: prevent removal of variables

There is no UI for adding variables (yet), so removing them shouldn't be
allowed. Removing and adding is still possible using the 'Advanced' view
by editing the YAML directly.

13 months agoWeb setup: Prevent JavaScript error when variable has unknown audience
Sybren A. Stüvel [Tue, 28 May 2019 13:32:23 +0000 (15:32 +0200)]
Web setup: Prevent JavaScript error when variable has unknown audience

13 months agoVariables: empty audience no longer allowed; replacing it with "all"
Sybren A. Stüvel [Tue, 28 May 2019 13:32:10 +0000 (15:32 +0200)]
Variables: empty audience no longer allowed; replacing it with "all"

14 months agoRemoved unused comment
Sybren A. Stüvel [Fri, 10 May 2019 10:50:08 +0000 (12:50 +0200)]
Removed unused comment

14 months agoWeb setup: added the Shaman variable to the predefined variables
Sybren A. Stüvel [Fri, 10 May 2019 10:49:31 +0000 (12:49 +0200)]
Web setup: added the Shaman variable to the predefined variables

14 months agoWeb setup: predefined variable description is now interpreted as HTML
Sybren A. Stüvel [Fri, 10 May 2019 10:48:51 +0000 (12:48 +0200)]
Web setup: predefined variable description is now interpreted as HTML

This allows things like `<br>` in the description.

14 months agoWeb setup: Start of work on predefined variables
Sybren A. Stüvel [Fri, 10 May 2019 10:24:05 +0000 (12:24 +0200)]
Web setup: Start of work on predefined variables

To make it simpler for people to work with variables, I think it's a
good idea to create some predefined ones (and not them be deleted). This
also allows us to include some indication as to the semantics of each
variable in the web setup, making it easier to work with.

14 months agoWeb Setup: added new interface for editing variables
Sybren A. Stüvel [Thu, 9 May 2019 09:11:36 +0000 (11:11 +0200)]
Web Setup: added new interface for editing variables

This interface works with version 2 of the variables, and is smarter &
more intuitive than the old one.

14 months agoDashboard & Web setup: Make links visible by default
Sybren A. Stüvel [Fri, 10 May 2019 10:23:11 +0000 (12:23 +0200)]
Dashboard & Web setup: Make links visible by default

14 months agoWeb Setup: get rid of Vue.js specifics when saving config
Sybren A. Stüvel [Fri, 10 May 2019 08:32:55 +0000 (10:32 +0200)]
Web Setup: get rid of Vue.js specifics when saving config

Get rid of Vue.js specific getters/setters and __ob__ properties via the
JSON dumper. It is less sensitive to this than the YAML dumper (the latter
complains about some thing being `undefined` without saying what, and I
can't find it either).

14 months agoWeb setup: Moved some styling to CSS
Sybren A. Stüvel [Wed, 8 May 2019 14:43:01 +0000 (16:43 +0200)]
Web setup: Moved some styling to CSS

14 months agoDashboard: alignment tweak for worker details
Sybren A. Stüvel [Wed, 8 May 2019 14:18:46 +0000 (16:18 +0200)]
Dashboard: alignment tweak for worker details

This way the space is more efficiently used when the dashboard isn't
displayed full screen.

14 months agoDashboard: fixed mismatched HTML close tag
Sybren A. Stüvel [Wed, 8 May 2019 14:16:22 +0000 (16:16 +0200)]
Dashboard: fixed mismatched HTML close tag

14 months agoDashboard: Don't use `<u>` to underline, just use CSS
Sybren A. Stüvel [Wed, 8 May 2019 14:16:11 +0000 (16:16 +0200)]
Dashboard: Don't use `<u>` to underline, just use CSS

14 months agoPrevent losing Flamenco Server URL when saving YAML
Sybren A. Stüvel [Wed, 8 May 2019 14:07:20 +0000 (16:07 +0200)]
Prevent losing Flamenco Server URL when saving YAML

14 months agoWeb setup: Save YAML and Apply → … and Restart to Normal Mode
Sybren A. Stüvel [Wed, 8 May 2019 13:48:30 +0000 (15:48 +0200)]
Web setup: Save YAML and Apply → … and Restart to Normal Mode

The button previously saved the YAML and restarted to setup mode, which is
rather clumsy in actual use. Restarting to normal mode makes more sense.

14 months agoAllow hiding infrastructure-dependent settings in web setup
Sybren A. Stüvel [Wed, 8 May 2019 12:08:45 +0000 (14:08 +0200)]
Allow hiding infrastructure-dependent settings in web setup

When `websetup.hide_infra_settings` is true, the websetup will hide
certain settings that are infrastructure-specific. For example, it hides
MongoDB choice, port numbers, task log directory, all kind of
infra/hosting-specific things. This is used, for example, by the
automated Azure deployment to avoid messing up settings that are
specific to that particular installation.

14 months agoAdded missing comments in websetup vue components
Sybren A. Stüvel [Wed, 8 May 2019 12:01:29 +0000 (14:01 +0200)]
Added missing comments in websetup vue components

14 months agoWorkaround for Golang issue #31880: os.Chtimes does not work on SMB shares
Sybren A. Stüvel [Tue, 7 May 2019 10:44:52 +0000 (12:44 +0200)]
Workaround for Golang issue #31880: os.Chtimes does not work on SMB shares

Shaman touches files in the file store whenever they are referenced in a
checkout. This makes garbage collection slightly more efficient, as
recently-referenced files do not have to be checked. However, `os.Chtimes`
only allows us to use an explicit timestamp, which is not allowed on
certain SMB shares. Passing `NULL` as timestamp to the underlying system
call works fine, so that's what has been implemented now.

This workaround is only available on Linux, as I haven't been able to test
with other platforms. The other platforms just fall back to calling
`os.Chtimes(path, now, now)`.

14 months agoDashboard: no border-radius on stop worker-action button. wip-redesign
Pablo Vazquez [Fri, 3 May 2019 16:54:54 +0000 (18:54 +0200)]
Dashboard: no border-radius on stop worker-action button.

It's too similar to the generic checkboxes.

14 months agoDashboard: add 'Nodes' to Dedicated and Low-priority labels.
Pablo Vazquez [Fri, 3 May 2019 16:45:02 +0000 (18:45 +0200)]
Dashboard: add 'Nodes' to Dedicated and Low-priority labels.

14 months agoChangelog: Fix entry in wrong line.
Pablo Vazquez [Fri, 3 May 2019 16:34:59 +0000 (18:34 +0200)]
Changelog: Fix entry in wrong line.

14 months agoMerge remote-tracking branch 'origin/master' into wip-redesign
Pablo Vazquez [Fri, 3 May 2019 16:33:42 +0000 (18:33 +0200)]
Merge remote-tracking branch 'origin/master' into wip-redesign

14 months agoAdd user interface update to the changelog (for 2.5).
Pablo Vazquez [Fri, 3 May 2019 16:31:09 +0000 (18:31 +0200)]
Add user interface update to the changelog (for 2.5).

14 months agoCSS: Slightly darker gray-darker color variable.
Pablo Vazquez [Fri, 3 May 2019 16:22:21 +0000 (18:22 +0200)]
CSS: Slightly darker gray-darker color variable.

14 months agoLatest Image system no longer writes to the `static` directory
Sybren A. Stüvel [Fri, 3 May 2019 16:21:09 +0000 (18:21 +0200)]
Latest Image system no longer writes to the `static` directory

This is necessary to run Flamenco Manager from a different directory than
the extracted tarball. Also an error opening the file is now shown in the
image, and some logging was improved.

14 months agoDashboard: Layout and styling for Dynamic Pools resize modal.
Pablo Vazquez [Fri, 3 May 2019 16:20:52 +0000 (18:20 +0200)]
Dashboard: Layout and styling for Dynamic Pools resize modal.

14 months agoDashboard: Layout and styling for Dynamic Pools.
Pablo Vazquez [Fri, 3 May 2019 16:20:24 +0000 (18:20 +0200)]
Dashboard: Layout and styling for Dynamic Pools.

14 months agoDashboard Modal: Move Cancel button to the left.
Pablo Vazquez [Fri, 3 May 2019 16:19:24 +0000 (18:19 +0200)]
Dashboard Modal: Move Cancel button to the left.

14 months agoDashboard: Border on the right of checkboxes.
Pablo Vazquez [Fri, 3 May 2019 16:18:38 +0000 (18:18 +0200)]
Dashboard: Border on the right of checkboxes.

Better splits them from the worker action icons.

14 months agoDashboard: Old Workers layout adjustments.
Pablo Vazquez [Fri, 3 May 2019 16:17:52 +0000 (18:17 +0200)]
Dashboard: Old Workers layout adjustments.

* Move under Dynamic Pools.
* Use section instead of div, just semantics.
* Don't use description lists, just simple unordered lists.

14 months agoCSS: Override bootstrap modal header/footer border color with our own.
Pablo Vazquez [Fri, 3 May 2019 16:07:45 +0000 (18:07 +0200)]
CSS: Override bootstrap modal header/footer border color with our own.

14 months agoDashboard: Make right-side column dark.
Pablo Vazquez [Fri, 3 May 2019 16:06:48 +0000 (18:06 +0200)]
Dashboard: Make right-side column dark.

Or we can call it, a sidebar!

14 months agoDashboard: Full-height with fixed-topheader.
Pablo Vazquez [Fri, 3 May 2019 16:06:03 +0000 (18:06 +0200)]
Dashboard: Full-height with fixed-topheader.

14 months agoMerge remote-tracking branch 'origin/master' into wip-redesign
Pablo Vazquez [Fri, 3 May 2019 13:42:09 +0000 (15:42 +0200)]
Merge remote-tracking branch 'origin/master' into wip-redesign

14 months agoAdded 'make vendor' target to put dependencies into the `vendor` dir
Sybren A. Stüvel [Fri, 3 May 2019 13:10:16 +0000 (15:10 +0200)]
Added 'make vendor' target to put dependencies into the `vendor` dir

This is necessary when developing inside the `$GOPATH` directory (e.g. the
"old style" of working), which is still supported better by Golang tooling
and IDEs than the Go Modules approach.

14 months agoDynamic pools: added ability to fake pools, for testing & UI design
Sybren A. Stüvel [Thu, 2 May 2019 14:52:00 +0000 (16:52 +0200)]
Dynamic pools: added ability to fake pools, for testing & UI design

14 months agoDynamic worker pools
Sybren A. Stüvel [Wed, 1 May 2019 15:11:52 +0000 (17:11 +0200)]
Dynamic worker pools

Dynamic Pools allow you to spin up or remove virtual machines running
Flamenco Worker. Pools can be resized from the Flamenco Manager
dashboard.

The code architecture is mostly set up to support multiple platforms
(like Google Compute, Amazon Web Services, Azure Batch, etc.). Currently
only support for Microsoft Azure Batch has been implemented. To really
properly support multiple platforms some changes will have to be made,
but those are better made when there are actually multiple platforms to
support.

The pool status is polled periodically using the platform's API. The
polling period is dynamic, and depends on whether the Manager dashboard
is actually open in a browser window.

14 months agoWorker table: add 'is-selected' CSS class to row when it's selected
Sybren A. Stüvel [Thu, 2 May 2019 14:27:27 +0000 (16:27 +0200)]
Worker table: add 'is-selected' CSS class to row when it's selected

14 months agoOnly show 'Old Workers' if there actually are old workers.
Sybren A. Stüvel [Thu, 2 May 2019 11:53:51 +0000 (13:53 +0200)]
Only show 'Old Workers' if there actually are old workers.

14 months agoDashboard: style tweaks for blacklist.
Pablo Vazquez [Thu, 2 May 2019 18:57:55 +0000 (20:57 +0200)]
Dashboard: style tweaks for blacklist.

14 months agoDashboard: layout tweaks for blacklist.
Pablo Vazquez [Thu, 2 May 2019 18:57:44 +0000 (20:57 +0200)]
Dashboard: layout tweaks for blacklist.

14 months agoDashboard: Logic tweaks to show/hide worker-action buttons.
Pablo Vazquez [Thu, 2 May 2019 18:38:29 +0000 (20:38 +0200)]
Dashboard: Logic tweaks to show/hide worker-action buttons.

The goal is to only have one button at a time:
* Hide shutdown.
* asleep_immediate shows once asleep is requested.

14 months agoDashboard: less padding on task log call to action buttons.
Pablo Vazquez [Thu, 2 May 2019 18:35:13 +0000 (20:35 +0200)]
Dashboard: less padding on task log call to action buttons.

14 months agoDashboard: use different arrows.
Pablo Vazquez [Thu, 2 May 2019 18:33:57 +0000 (20:33 +0200)]
Dashboard: use different arrows.

And use [none] instead of -none-.

14 months agoDashboard: Add class to row if it's requesting a status.
Pablo Vazquez [Thu, 2 May 2019 18:32:47 +0000 (20:32 +0200)]
Dashboard: Add class to row if it's requesting a status.

Primarily used to style worker icons inside.

14 months agoDashboard: Remove empty space after task update text.
Pablo Vazquez [Thu, 2 May 2019 18:31:58 +0000 (20:31 +0200)]
Dashboard: Remove empty space after task update text.

14 months agoDashboard: underline link to task.
Pablo Vazquez [Thu, 2 May 2019 18:31:27 +0000 (20:31 +0200)]
Dashboard: underline link to task.

14 months agoDashboard: wider column for for old workers list.
Pablo Vazquez [Thu, 2 May 2019 18:31:07 +0000 (20:31 +0200)]
Dashboard: wider column for for old workers list.

14 months agoDashboard: Don't wrap text on certain fields.
Pablo Vazquez [Thu, 2 May 2019 18:30:35 +0000 (20:30 +0200)]
Dashboard: Don't wrap text on certain fields.

14 months agoDashboard: Icons for quick worker-action.
Pablo Vazquez [Thu, 2 May 2019 18:26:58 +0000 (20:26 +0200)]
Dashboard: Icons for quick worker-action.

14 months agoDashboard: Extra cell on table for details.
Pablo Vazquez [Thu, 2 May 2019 18:24:47 +0000 (20:24 +0200)]
Dashboard: Extra cell on table for details.

14 months agoDashboard: Display old workers in a list.
Pablo Vazquez [Thu, 2 May 2019 18:24:00 +0000 (20:24 +0200)]
Dashboard: Display old workers in a list.

14 months agoDashboard: Show Schedule and Software columns only on large screens.
Pablo Vazquez [Thu, 2 May 2019 18:23:05 +0000 (20:23 +0200)]
Dashboard: Show Schedule and Software columns only on large screens.

14 months agoDashboard: notify on copied to clipboard for worker ID and address.
Pablo Vazquez [Thu, 2 May 2019 18:21:33 +0000 (20:21 +0200)]
Dashboard: notify on copied to clipboard for worker ID and address.

14 months agoDashboard: Use chevron instead of text to expand details.
Pablo Vazquez [Thu, 2 May 2019 18:19:44 +0000 (20:19 +0200)]
Dashboard: Use chevron instead of text to expand details.

14 months agoCSS: Minor styling tweaks and utility CSS classes.
Pablo Vazquez [Thu, 2 May 2019 18:16:56 +0000 (20:16 +0200)]
CSS: Minor styling tweaks and utility CSS classes.

14 months agoDashboard: Move stats to the header.
Pablo Vazquez [Thu, 2 May 2019 16:54:41 +0000 (18:54 +0200)]
Dashboard: Move stats to the header.

14 months agoWorker table: add 'is-selected' CSS class to row when it's selected
Sybren A. Stüvel [Thu, 2 May 2019 14:27:27 +0000 (16:27 +0200)]
Worker table: add 'is-selected' CSS class to row when it's selected

14 months agoCSS: Tweak to utility classes.
Pablo Vazquez [Thu, 2 May 2019 14:35:37 +0000 (16:35 +0200)]
CSS: Tweak to utility classes.

And new cursor-pointer utility class.

14 months agoWording: Reset to Default Value -> Reset to Active Value
Pablo Vazquez [Thu, 2 May 2019 10:48:31 +0000 (12:48 +0200)]
Wording: Reset to Default Value -> Reset to Active Value

14 months agoUpdated comment on StatusReport document
Sybren A. Stüvel [Thu, 2 May 2019 09:10:17 +0000 (11:10 +0200)]
Updated comment on StatusReport document

14 months agoUpdated README.md to describe the new go.mod workflow
Sybren A. Stüvel [Fri, 26 Apr 2019 15:31:25 +0000 (17:31 +0200)]
Updated README.md to describe the new go.mod workflow

This doesn't depend on $GOPATH any more. See
https://github.com/golang/go/wiki/Modules for more info.

14 months agoRan 'go mod tidy' to tidy up the modules
Sybren A. Stüvel [Fri, 26 Apr 2019 15:29:34 +0000 (17:29 +0200)]
Ran 'go mod tidy' to tidy up the modules

14 months agogo.sum updated when running make on macOS
Francesco Siddi [Fri, 26 Apr 2019 14:48:22 +0000 (16:48 +0200)]
go.sum updated when running make on macOS

14 months agoMoved from dep to go.mod
Sybren A. Stüvel [Fri, 26 Apr 2019 14:28:45 +0000 (16:28 +0200)]
Moved from dep to go.mod

14 months agoAdded test keys
Sybren A. Stüvel [Wed, 1 May 2019 10:45:37 +0000 (12:45 +0200)]
Added test keys

The .gitignore file was a little too broad in ignoring *.pem files.

14 months agoDashboard: Style arrows differently for immediate or queued change.
Pablo Vazquez [Tue, 30 Apr 2019 17:02:47 +0000 (19:02 +0200)]
Dashboard: Style arrows differently for immediate or queued change.

14 months agoDashboard: Style the requested status.
Pablo Vazquez [Tue, 30 Apr 2019 16:58:25 +0000 (18:58 +0200)]
Dashboard: Style the requested status.

14 months agoCSS: Cleanup.
Pablo Vazquez [Tue, 30 Apr 2019 16:45:43 +0000 (18:45 +0200)]
CSS: Cleanup.

14 months agoDashboard: dark header for table.
Pablo Vazquez [Tue, 30 Apr 2019 16:45:36 +0000 (18:45 +0200)]
Dashboard: dark header for table.

14 months agoDashboard: tweak to arrow between changing states.
Pablo Vazquez [Tue, 30 Apr 2019 16:45:14 +0000 (18:45 +0200)]
Dashboard: tweak to arrow between changing states.

14 months agoDashboard: Contrast adjustment on table rows.
Pablo Vazquez [Tue, 30 Apr 2019 16:44:34 +0000 (18:44 +0200)]
Dashboard: Contrast adjustment on table rows.

14 months agoDashboard: Remove border from action bar.
Pablo Vazquez [Tue, 30 Apr 2019 16:44:20 +0000 (18:44 +0200)]
Dashboard: Remove border from action bar.

14 months agoMinor layout and style tweaks to template_action_bar.
Pablo Vazquez [Tue, 30 Apr 2019 16:33:25 +0000 (18:33 +0200)]
Minor layout and style tweaks to template_action_bar.

Use smaller buttons and bolder text.

14 months agoDashboard: Scheduled text and layout tweaks.
Pablo Vazquez [Tue, 30 Apr 2019 16:05:18 +0000 (18:05 +0200)]
Dashboard: Scheduled text and layout tweaks.

14 months agoCSS: general tweaks to variables.
Pablo Vazquez [Tue, 30 Apr 2019 16:04:52 +0000 (18:04 +0200)]
CSS: general tweaks to variables.

And utility for white-space-nowrap.