1232 Commits

Author SHA1 Message Date
Pablo Vazquez
85eb17e434 Web: Layout adjustments to sleep schedule 2022-07-26 16:51:51 +02:00
Pablo Vazquez
bd20ba7d6b Web: Fix two-column layout outside of Workers page 2022-07-26 16:51:51 +02:00
Pablo Vazquez
f0a592a9ba Web: Style and layout to Sleep Schedule management
* Use full-width form
  Fitting an input inside a <dl> makes it jump around
* Add button to toggle schedule on/off
* Add button to cancel editing the schedule
* Use time type inputs for Start/End Time fields
* Add help text to "Days of Week" to explain it's only the first 2 letters
2022-07-26 16:51:51 +02:00
Pablo Vazquez
68370a1df4 Web: Use two-column layout 2022-07-26 16:51:51 +02:00
Francesco Siddi
3b719dca77 Web: UI for Worker schedule editing 2022-07-26 16:51:51 +02:00
Francesco Siddi
d6f419a683 Web: Rename link components
No functional change, just name the components with their type first,
so that all 'link' related components are more discoverable and next
to each other.
2022-07-26 16:33:05 +02:00
Francesco Siddi
9129427e29 Setup Assistant: Display Blender version
Replace the [preview output] with the actual Blender version, and
update the tooltip to describe where the version comes from.
2022-07-26 11:48:40 +02:00
Francesco Siddi
792909dc49 Setup Assistant: Make intro screen more compact
Additionally, use clearer wording in the shared storage section about
what the storage is used for.
2022-07-26 11:48:40 +02:00
Francesco Siddi
36e0a6052f Web: Let WorkerTaskLink support undefined tasks
Fixes an error when the component is passed an undefined or missing
workerTask property.
2022-07-26 11:22:32 +02:00
Sybren A. Stüvel
736ca103c3 Manager: show current/last task in worker details
The Task details component already linked to the Worker it was assigned
to last, and now the Worker links back to the task.

There's only one task shown in the Worker details. If the Worker is
actively working on a task, that one's shown. Otherwise it's the
last-updated task that was assigned to the worker.
2022-07-26 10:36:02 +02:00
Sybren A. Stüvel
2a4e557bd9 OAPI: regenerate code 2022-07-26 10:28:28 +02:00
Sybren A. Stüvel
ed1a968691 OAPI: include "task" in fetchWorker response
Include the worker's current/last task in the response of the
`fetchWorker` operation.
2022-07-26 10:27:57 +02:00
Francesco Siddi
9948fdab71 Rename First Time Wizard to Setup Assistant
This commit does not introduce functional changes, besides renaming
every mention of 'wizard' with 'setup assistant'. In order to run the
manager setup assistant use:

./flamenco-manager -setup-assistant

The change was introduced to favor more neutral and descriptive working
for this functionality. Thanks to Sybren for helping to get this done!
2022-07-25 17:17:04 +02:00
Francesco Siddi
a2bd8a5615 OAPI: generate code 2022-07-25 17:16:53 +02:00
Francesco Siddi
3c22becc18 OAPI: rename wizard to setup-assistant
No functional changes, just a rename.
2022-07-25 17:14:21 +02:00
Sybren A. Stüvel
3206842fe8 Manager: log "own URLs" last, to make them more visible
Logging the URLs at which the Manager can be reached as the last thing
when starting up, in the hope that this makes them more noticable and
inviting to actually visit.
2022-07-25 17:10:41 +02:00
Sybren A. Stüvel
858089a1c3 Makefile: add release-package target
Add Makefile target for building release packages. There are individual
targets `release-package-{linux,darwin,windows}` for specific OSses. The
`release-package` targets just runs all of them.

The `release-package-darwin` builds only for AMD64/x64 CPUs, since there
are no static builds fo FFmpeg for that platform:
https://evermeet.cx/ffmpeg/apple-silicon-arm

Manifest Task: T99411
2022-07-25 16:53:25 +02:00
Sybren A. Stüvel
45542ef84c OAPI: regenerate code
Regenerate the OpenAPI code to reflect the new version number handling.

See rFc1a728dc for more info.
2022-07-25 16:12:27 +02:00
Sybren A. Stüvel
76f99d9f7d Change flamenco.io → flamenco.blender.org in a few places
Update the add-on's documentation URL and the README for the static website
so that they refer to https://flamenco.blender.org/
2022-07-25 16:10:39 +02:00
Sybren A. Stüvel
c1a728dc2f Version updates via Makefile
Flamenco now no longer uses the Git tags + hash for the application
version, but an explicit `VERSION` variable in the `Makefile`.

After changing the `VERSION` variable in the `Makefile`, run
`make update-version`.

Not every part of Flamenco looks at this variable, though. Most
importantly: the Blender add-on needs special handling, because that
doesn't just take a version string but a tuple of integers. Running
`make update-version` updates the add-on's `bl_info` dict with the new
version. If the version has any `-blabla` suffix (like `3.0-beta0`) it
will also set the `warning` field to explain that it's not a stable
release.
2022-07-25 16:08:07 +02:00
Sybren A. Stüvel
a0b4fc18e6 Makefile: quiet the generator for JS and Python code
The OpenAPI generator is very noisy, so it now logs to a file instead
of to stdout. The file is git-ignored. This was easier than redirecting
to `/dev/null`, as that's not available on Windows.
2022-07-25 16:08:07 +02:00
Sybren A. Stüvel
ab8ecc24cc Cleanup: Add missing license specifiers
Add license specifiers to Go files that were missing them:

```
// SPDX-License-Identifier: GPL-3.0-or-later
```

No functional changes.
2022-07-25 16:08:07 +02:00
Sybren A. Stüvel
c7987a8500 Makefile: remove PKG_LIST variable
The `$PKG_LIST` variable was only used for running `go test`, and can be
replaced with `./...`.
2022-07-25 16:08:07 +02:00
Sybren A. Stüvel
bcbe35a7c7 Run Go tests in parallel
Earlier versions of the code didn't have proper separation of SQLite
databases for the unit tests. Tests nowadays use separate in-memory
databases, so they can run in parallel just fine.
2022-07-25 16:08:07 +02:00
Francesco Siddi
05e82ea5e4 Website: Update deployment script
The flamenco.io website moves to flamenco.blender.org!
This commit updates the Makefile as follows:

- Rename 'site' to 'project-website', so the new command to deploy is
  'make project-website'
- Move the website directory from 'flamenco-io-site' to
  'project-website'
- Update the rsync command do reflect the new deployment destination
2022-07-25 14:42:30 +02:00
Sybren A. Stüvel
424b87d1d3 Shaman tests: ensure the temporary storage path is not a symlink
Shaman cannot handle cases where the storage path is a symlink (i.e. cases
where `filepath.EvalSymlinks(storagePath)` does not return `storagePath`).
This caused macOS devices to fail the unit tests, because macOS uses a
symlinked path for temporary files.

This commit changes the unit tests, to always use the real path instead of
the OS-provided symlink. This does *not* fix the actual issue in Shaman,
for that see T99965.
2022-07-25 13:03:46 +02:00
Sybren A. Stüvel
6731f96579 Shaman: better logging for garbage collector
Increase verbosity (debug → info) when checkout dir traversal fails, and
add a trace-level log for each file that is still in use. There were some
issues with symlinks, where the wrong paths were compared (see T99965) and
this log made it visible what was going wrong.
2022-07-25 13:01:49 +02:00
Francesco Siddi
9856a34071 Web: Fix asset import 2022-07-22 17:00:55 +02:00
Francesco Siddi
43c1df99df Web: Remove unused function 2022-07-22 17:00:55 +02:00
Francesco Siddi
43e75f6576 Web: Simplify microtip import 2022-07-22 17:00:55 +02:00
Sybren A. Stüvel
59cb21e3b6 Makefile: add tools targets to download FFmpeg
Four Makefile targets have been added:
- `tools`, which evokes the other three
- `tools-linux`, `tools-darwin`, `tools-windows`, download FFmpeg and put
  the `ffmpeg` executables into `./tools/ffmpeg-{OS}-{ARCH}`.

Downloaded tarball/ZIP files are stored in `tools/download`, and won't be
re-downloaded if they already exist.
2022-07-22 16:37:14 +02:00
Sybren A. Stüvel
0e6d61dd84 Remove the {ffmpeg} variable
Remove the `{ffmpeg}` variable from the default configuration, and its use
from the job compiler scripts. Now that the Worker can find its bundled
FFmpeg, it's no longer needed to configure its location on the Manager.
2022-07-22 16:37:14 +02:00
Sybren A. Stüvel
09946c0894 Worker: use bundled FFmpeg if available
Worker will now try one of the following paths, relative to the flamenco-worker
executable, in order to find FFmpeg. If they cannot be found, `$PATH` is
searched for FFmpeg.

- `tools/ffmpeg-$GOOS-$GOARCH`
- `tools/ffmpeg-$GOOS`
- `tools/ffmpeg`

On Windows these paths will have a `.exe` suffix appended. `$GOOS` is the
operating system, like "linux", "darwin", "windows", etc. `$GOARCH` is the
architecture, like "amd64", "386", etc.
2022-07-22 16:37:14 +02:00
Sybren A. Stüvel
a5940a24f0 Worker: load flamenco-worker.yaml from current directory
By accident I made the worker load `flamenco-worker.yaml` from the "local
files" directory (~/.local/share/flamenco on Linux) instead of the current
directory. This was incorrect, as that file is meant to contain
configuration that's shared between workers.
2022-07-22 16:37:14 +02:00
Pablo Vazquez
284855f18f Cleanup: Indentation 2022-07-22 15:41:37 +02:00
Pablo Vazquez
71f8791e4a Last Rendered: Fix overflow of tall images in global last-rendered
Fixes T99458
2022-07-22 15:41:22 +02:00
Francesco Siddi
18a3703bd1 Setup Assistant: Update architecture.png 2022-07-22 14:57:12 +02:00
Pablo Vazquez
53598c3ee0 Manager: Rephrase wording on report for successfully writing to Shared Storage
* Replace "OK!" with "successfully"
  Remove exclamation mark since there is no need to call for attention.
  Use "successfully" as it is more descriptive in this case than OK,
  which can have other meanings.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
cac3b35c9d Setup Assistant: Tweaks to Review step
* Rename "Blender" to "Blender Command"
* Style adjustments to improve readability
2022-07-22 14:57:12 +02:00
Pablo Vazquez
047a2e5953 Setup Assistant: Layout, style and wording adjustments
* Try to be more descriptive by mentioning "executable", not just Path.
* Rename field placeholder "Blender Path" to "Path to Blender executable".
* Try to shorten certain lines while maintaining clarity.
* Use colons when appropriate.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
4c832dfb4c Setup Assistant: Fix field with path to Blender executable showing twice
Solution provided by Francesco.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
8d5ce11351 Setup Assistant: Tweak wording and add links to Shared Storage step 2022-07-22 14:57:12 +02:00
Pablo Vazquez
cc22c1010f Setup Assistant: Style and layout tweaks to Welcome step 2022-07-22 14:57:12 +02:00
Pablo Vazquez
341f874ec2 Setup Assistant: Style progress for current + done step
As well as color when a step is already done but we are at a previous step.

First step is always marked as done and colored.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
860017fb42 Setup Assistant: Initial styling to Blender step 2022-07-22 14:57:12 +02:00
Pablo Vazquez
40b0a04af1 Setup Assistant: style invalid input for Blender executable 2022-07-22 14:57:12 +02:00
Pablo Vazquez
51cd4dbdf6 Setup Assistant: Style adjustment to h1 title 2022-07-22 14:57:12 +02:00
Pablo Vazquez
70fdaa78f1 Setup Assistant: Move progress indicator outside of step 2022-07-22 14:57:12 +02:00
Pablo Vazquez
c039a117fd Setup Assistant: Style adjustments
Style current and done step indicators slightly different.
Also on hover scale the indicator a bit, on non-disabled items.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
e11c73c798 Setup Assistant: Cleanup rename CSS variable
From --wiz-progress- to --setup-progres-
2022-07-22 14:57:12 +02:00