Feature: add changes from 1and1 branch, rebase + resolve conflicts for current main#42
Feature: add changes from 1and1 branch, rebase + resolve conflicts for current main#42
Conversation
With this change the tailwind styles are only applied to the app container of the decoupled content store
This stops having to go through all individual worker outputs
Each document needs to be checked whether it’s still connected to the page tree though.
Only upload script once and reuse script and redis instance
BUGFIX: Add html escaping to stderr and stdout of job logs
…ack/Flowpack.DecoupledContentStore into task/adjustments-for-1and1
Previously if `ContentReleaseBatchResult` contained a wrong value or the fallback null the view would crash.
…ce-and-highlight-error BUGFIX: Joblogs preserve whitespace and highlight errors
If a line contains json output it is rendered as toggable details element
skurfuerst
left a comment
There was a problem hiding this comment.
Hey everybody, specifically @Sebobo and @erickloss ,
thanks for your contributions ❤️ Sorry I only now saw this pull request, please ping me next time in Slack :)
I am currently working on a bigger overhaul of the Decoupled ContentStore package, which will support other rendering targets than the default Fusion rendering as well. In the course of doing so, I have reviewed this change, and would like to discuss a few details. Overally, the code looks great ❤️ ❤️ ❤️
I'd love to make this a part of version 2 (my changes will be a bit breaking config-wise, but easy to adjust).
All the best,
Sebastian
PS: I am on holidays the next two weeks, so we'll find a spot for discussing this afterwards :)
|
|
||
| /** | ||
| * We usually rely on prunner to ensure that only one build is running at any given time. | ||
| * We usually rely on prunner to ensure that only one build per workspace is running at any given time. |
There was a problem hiding this comment.
new feature (for changelog / upgrade notes)
| // Remove additional JSON data from log line | ||
| $line = preg_replace("/\{.*}/", '', $line); | ||
|
|
||
| // Add highlighting for log levels |
There was a problem hiding this comment.
new feature (for changelog / upgrade notes)
| protected $contentReleaseManager; | ||
|
|
||
| /** | ||
| * @Flow\InjectConfiguration("startIncrementalReleaseOnWorkspacePublish") |
There was a problem hiding this comment.
new feature (for changelog / upgrade notes)
| return [ | ||
| 'contextPath' => $this->contextPath, | ||
| 'nodeIdentifier' => $this->nodeIdentifier, | ||
| 'dimensions' => $this->getDimensionsFromContextPath(), |
There was a problem hiding this comment.
why dimensions extra here?
There was a problem hiding this comment.
I'm not sure anymore. Probably unused.
| protected $contextFactory; | ||
|
|
||
| /** | ||
| * @Flow\InjectConfiguration(path="nodeRendering.recurseHiddenContent", package="Flowpack.DecoupledContentStore") |
There was a problem hiding this comment.
new feature (for changelog / upgrade notes)
|
|
||
| $contentReleaseLogger->debug('Registering node for publishing', [ | ||
| 'node' => $contextPath | ||
| if ($nodeToEnumerate->isHidden()) { |
There was a problem hiding this comment.
I thought you wanted to allow hidden nodes as well?
There was a problem hiding this comment.
We allow hidden content (due to project specifics), but not hidden documents.
| public static function fromEnumeratedNode(EnumeratedNode $enumeratedNode) | ||
| { | ||
| return new self($enumeratedNode->getNodeIdentifier(), $enumeratedNode->getDimensionsFromContextPath(), $enumeratedNode->getArguments()); | ||
| return new self($enumeratedNode->getNodeIdentifier(), $enumeratedNode->getDimensionsFromContextPath(), $enumeratedNode->getWorkspaceNameFromContextPath(), $enumeratedNode->getArguments()); |
There was a problem hiding this comment.
how does this change do anything? (modifications in this class)
There was a problem hiding this comment.
This was not fully finished, see TODO below. I think we were lucky so far, that we didn't have collisions due to this.
| 'The cache backend for "Neos_Fusion_Content" must be an OptimizedRedisCacheBackend, but is ' . get_class( | ||
| $backend | ||
| ), 1622570000 | ||
| ); |
There was a problem hiding this comment.
I believe this is only code refactoring, no functional change?
There was a problem hiding this comment.
No it was an optimisation Only upload script once and reuse script and redis instance
| return PrunnerJobId::fromString($item); | ||
| }, json_decode($tmp['manualTransferJobIds'])) : [], | ||
| $tmp['workspace'] ?? 'live', | ||
| $tmp['workspaceName'] ?? 'live', |
There was a problem hiding this comment.
TODO check if this is correct
There was a problem hiding this comment.
Yes, see the jsonSerialize method of ContentReleaseMetadata
| script: | ||
| - ./flow contentReleasePrepare:createContentRelease {{ .contentReleaseId }} {{ .__jobID }} --workspaceName {{ .workspaceName }} --accountId {{ .accountId }} | ||
| - ./flow contentReleasePrepare:ensureAllOtherInProgressContentReleasesWillBeTerminated {{ .contentReleaseId }} | ||
| - ./flow contentReleasePrepare:flushContentCacheIfRequired {{ .contentReleaseId }} --flushContentCache={{ .flushContentCache }} |
There was a problem hiding this comment.
BREAKING, so needs tobe added to own pipelines.yaml when updating to 2.0
No description provided.