267 Commits

Author SHA1 Message Date
Sybren A. Stüvel
37d8fbdf5e Web: remove 'settings' view
It's not in use, and better to not have it at all then.
2022-06-28 12:32:09 +02:00
Sybren A. Stüvel
c3345131c7 Rename flamenco-addon.zip to flamenco3-addon.zip
Just to be explicit this is for the new Flamenco version.
2022-06-28 12:17:57 +02:00
Sybren A. Stüvel
c856be30e4 Cleanup: web, remove unused import 2022-06-28 10:47:24 +02:00
Sybren A. Stüvel
6d9e5d5299 Web: fix JavaScript issue that only pops up in production
Fix an issue ("`this` is undefined) that only pops up when serving the
static files from `yarn build`, and not when using the Vite devserver.
2022-06-28 10:47:16 +02:00
Sybren A. Stüvel
e9bc55cfc8 Web: don't hard-code the API port
Having the web API client override the HTTP port for the API URL is fine
during development (when the web content is served through the Vite
devserver), but not in production.
2022-06-28 10:30:26 +02:00
Sybren A. Stüvel
2045a087ca Web: add link to the API explorer
Add a link to `/api/swagger-ui/` to the top bar, which allows exploration
of the API.
2022-06-27 16:13:15 +02:00
Sybren A. Stüvel
def56b5d22 Serve the add-on via the web interface
Serve the Blender add-on via the web interface, downloadable from
`/flamenco-addon.zip`.
2022-06-27 16:12:50 +02:00
Sybren A. Stüvel
7b028df8ac Manager: serve static files of the webapp at /app/
Vue Router generates URLs for which there are no static files on the
filesystem (like `/jobs/{job ID}`). To make this work, the webapp's
`index.html` has to be served for such requests. The client-side JavaScript
then figures out how things fit together, and can even render a nice 404
page if necessary.

This shouldn't happen for non-webapp URLs, though. Because of this, the
entire webapp (including the "serve `index.html` if file not found logic)
is moved to a `/app/` base URL.

`make flamenco-manager` now also builds the webapp and embeds the static
files into the binary.

`make flamenco-manager_race` does NOT rebuild the static web files, to
help speed up of debug cycles. Run `make webapp-static` to rebuild the
webapp itself, if necessary, or run a separate web development server with
`yarn --cwd web/app run dev --host`.
2022-06-27 14:53:42 +02:00
Sybren A. Stüvel
1353d1df0f OAPI: regenerate code 2022-06-27 11:32:12 +02:00
Sybren A. Stüvel
167b2eaf45 OAPI: regenerate code 2022-06-24 16:39:50 +02:00
Sybren A. Stüvel
e0b9866fd4 Web: resize columns after their data was updated
When data is updated, resize columns in the job/task/worker tables. For
example, status change requests of Workers require more space, for example
going from `awake` to `awake → offline`.
2022-06-20 11:44:08 +02:00
Sybren A. Stüvel
8bfe24cd96 Web: upgrade Tabulator 5.2.4 → 5.2.7 2022-06-20 11:21:42 +02:00
Sybren A. Stüvel
64c8fa851d Show assigned worker in task details
Show the worker assigned to the task in the task details view, as link
to the worker itself.
2022-06-17 16:36:55 +02:00
Sybren A. Stüvel
857704c184 Web: worker nickname → name
See 55676b000efbd04cd895da9068f375dfad473ff4
2022-06-17 15:55:36 +02:00
Sybren A. Stüvel
81f81d0e0a Show task failure list in the web frontend
Show the task failure list in the web frontend's `TaskDetails` component.
2022-06-17 11:37:56 +02:00
Sybren A. Stüvel
7f14dac62f OAPI: regenerate code 2022-06-17 11:37:54 +02:00
Sybren A. Stüvel
61aad21e99 OAPI: regenerate code 2022-06-16 11:02:04 +02:00
Sybren A. Stüvel
92d6693871 Show Task's "last touched" in the web interface 2022-06-09 11:59:43 +02:00
Sybren A. Stüvel
1c9846bb8f OAPI: regenerate code 2022-06-09 11:59:32 +02:00
Sybren A. Stüvel
7c43b9e1bc Web: include status by name in job & task tables
Having only the status dot was hard to read. It requires you to learn &
remember the different colours, or to mouse-over and wait to see the
tooltip. For accessibility, we shouldn't be using just the colour to
convey information in the interface.
2022-06-09 11:01:03 +02:00
Sybren A. Stüvel
b41feee313 Web: reduce workers table height
The 720px was almost filling up the entire height, making it hard to add
anything new at the top. Soon it should be auto-resizing anyway, making
this less relevant.
2022-06-03 13:02:23 +02:00
Sybren A. Stüvel
375a6666c2 Web: move Worker status change requests to drop-down
This basically copies the drop-down approach from Flamenco Manager 2.
2022-06-03 13:01:47 +02:00
Sybren A. Stüvel
df36d93d7b Web: style "current page" links differently
This makes it visible which section of Flamenco you're actually in.
2022-06-02 18:56:24 +02:00
Sybren A. Stüvel
f1a3d98c5b Roll back color changes
By request of Francesco.
2022-06-02 18:51:20 +02:00
Sybren A. Stüvel
17f1b42d19 Web: slightly bluer purple 2022-06-02 18:42:57 +02:00
Sybren A. Stüvel
3818d4df83 Web: add simple worker action bar
UI/UX needs improvements, but there now are some buttons to manage Workers.
They request forced status changes, so nothing lazy yet. Still have to
consider how to include that in the UI. Could probably follow the
Flamenco 2 Manager design.
2022-06-02 18:42:34 +02:00
Sybren A. Stüvel
72fd1ac761 Web: simplify log tail fetching a bit 2022-06-02 18:29:16 +02:00
Sybren A. Stüvel
326e54e45a Web: fix job & task subscriptions
Making the UUID optional (rF221ed17fa27193086ec5c9201d48f7cd826e75a4) made
the generated JavaScript code ignore the 3rd parameter. Apparently the
constructor parameters are only for the mandatory properties, and the
rest has to be set on a per-property basis.
2022-06-02 18:29:03 +02:00
Sybren A. Stüvel
276b026f02 Web: change accent hue
The blue was so boring. Purple is much better.
2022-06-02 18:22:06 +02:00
Sybren A. Stüvel
ce2e11c35c Web: handle corner case where worker is deselected 2022-06-02 16:45:37 +02:00
Sybren A. Stüvel
cf8b4e18b1 OAPI: regenerate code 2022-06-02 16:25:38 +02:00
Sybren A. Stüvel
3ce225b6e1 Web: remove debug console log 2022-06-02 12:33:38 +02:00
Sybren A. Stüvel
bc33f55b3c Web: update for extraction of status change requests to struct
See recent OpenAPI change.
2022-06-02 12:33:32 +02:00
Sybren A. Stüvel
9ca14cd471 OAPI: regenerate code 2022-06-02 12:16:51 +02:00
Sybren A. Stüvel
3c1b0e0539 Web: status indicator, swap arrows
➜ is more visible than ➠, and thus should be used for the stronger
status change request.
2022-06-02 11:44:29 +02:00
Sybren A. Stüvel
3e1137ca65 Web: fix status_requested not disappearing from Tabulator 2022-05-31 17:28:40 +02:00
Sybren A. Stüvel
f97f0a34c3 Manager: implement worker status change requests
Implement the OpenAPI `RequestWorkerStatusChange` operation, and handle
these changes in the web interface.
2022-05-31 17:22:03 +02:00
Sybren A. Stüvel
fdb0b82664 OAPI: regenerate code 2022-05-31 17:19:06 +02:00
Sybren A. Stüvel
68cd14db2d Fix: add missing <span> around state transition arrow 2022-05-31 15:51:31 +02:00
Sybren A. Stüvel
1510489f4d Web: show requested worker state transition 2022-05-31 15:50:59 +02:00
Sybren A. Stüvel
e18dab5c82 Web: make the worker list narrower, occupying only a single column 2022-05-31 15:48:00 +02:00
Sybren A. Stüvel
fc4e3d60d7 Web: show more info in the worker details 2022-05-31 15:47:49 +02:00
Sybren A. Stüvel
237b208fb2 Web: show Worker software version in worker list 2022-05-31 15:31:56 +02:00
Sybren A. Stüvel
90707dceed OAPI: regenerate code 2022-05-31 15:30:26 +02:00
Sybren A. Stüvel
66edc5c4d3 Web: include name of status in worker list
This makes it a bit easier to interpret. Just having the colours might
be too little information.
2022-05-31 15:23:42 +02:00
Sybren A. Stüvel
2e11c1c240 Manager: Implement SocketIO worker updates 2022-05-31 15:19:12 +02:00
Sybren A. Stüvel
1f49880b7f OAPI: regenerate code 2022-05-31 15:18:48 +02:00
Sybren A. Stüvel
2b89399206 Manager: handle allJobs subscription
SocketIO clients no longer automatically subscribe to the jobs updates.
This is now done explicitly via the `allJobs` subscription type, and
unsubscribing is also possible.
2022-05-31 15:00:37 +02:00
Sybren A. Stüvel
0fc0d1d0e0 OAPI: regenerate code 2022-05-31 14:58:49 +02:00
Sybren A. Stüvel
cd35e3a5cb Web: avoid error resizing the tasks table
The tasks table resize function is called via `this.$nextTick()`, which
means that the component can actually already be unmounted by the time
the actual function call is performed. This is now detected & handled.
2022-05-31 14:56:13 +02:00