Overview

#3472103: Add Tugboat integration added Tugboat integration, which makes it easy for non-developers (and also developers) to test out a given state of XB's codebase (whether the 0.x branch tip or a not-yet-merged MR) in the browser without needing to install a Drupal site and all its dependencies (PHP, MySQL, etc.) on your own computer.

But testing out XB is more enjoyable when it's paired with a nice design system. And https://www.drupal.org/project/demo_design_system provides one.

Proposed resolution

Change .tugboat/config.yml to also install the demo_design_system theme.

User interface changes

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

effulgentsia created an issue. See original summary.

q0rban’s picture

Would you like the demo_design_system theme to be the default theme, or just installed and available?

cosmicdreams’s picture

It certainly is nice to have really good looking components to use while demonstrating why this is an interesting thing to new eyes.

kristen pol’s picture

Yes, please! 🙏

kristen pol’s picture

guptahemant’s picture

I think its useful to include SDDS as well along with tugboat previews but we also need to call out that SDDS design system is being included with this preview for testing purposes.

wim leers’s picture

q0rban’s picture

Status: Active » Needs work

I made an MR for this, but the preview gives a WSOD. The error is:

Uncaught PHP Exception Twig\\Error\\LoaderError: "Template "starshot_demo:starshot-hero" is not defined in "themes/contrib/demo_design_system/starshot_demo/templates/page--front.html.twig" at line 4." at /var/www/drupal/vendor/twig/twig/src/Loader/ChainLoader.php line 111

Any ideas?

kristen pol’s picture

Interesting… I’ll try to look today because I fly out tomorrow

q0rban’s picture

Okay, interesting. I don't see a "civic" theme in there. Should I use the "starshot_demo" theme?

effulgentsia’s picture

kristen pol’s picture

Sorry… haven’t gotten to computer today but will try from the airport

kristen pol’s picture

Version: » 0.x-dev

Whoops! DrupalCon happened and then a week off... hmm... but, yes, you should enable starshot_demo.

Please see the steps here:

https://www.drupal.org/community-initiatives/starshot-demo-design-system...

Note: we are working today on getting rid of the components module dependency so that should be fixed soon.

q0rban’s picture

Thank you, that did the trick.

Updated MR.

Note, this increases the build time to about 10 minutes.

q0rban’s picture

Status: Needs work » Needs review
kristen pol’s picture

Looks like it has everything. How do we test?

q0rban’s picture

@kristen at the top of this issue, you will see a "View live preview" button, and if you click that button, you can test there. Credentials are admin/admin.

screenshot of Tugboat live preview button on this issue

kristen pol’s picture

Thanks!

It does "work":

https://mr323-zbzg3fgtmxhjnhiibdr2ns38ldwjk3r8.tugboatqa.com/

and the components show up in XB, but some reasons the props form isn't working... so not sure what has changed since Barcelona. SDDS hasn't had any commits since then, so I assume it's something in XB... but one of our devs rebuilt his local yesterday with XB+SDDS and it's all working so then it seems like it's just the Tugboat environment :shrug:

Only errors I see are a 404 for:

/themes/contrib/demo_design_system/starshot_demo/components/03-organisms/starshot-case-study/assets/starshot/starshot_banner_frame.svg

But the component images are showing up so :shrug:

q0rban’s picture

I wonder if this is a permissions issue. I've just pushed up a change that might fix that. Can you test again, Kristen?

Thank you!

kristen pol’s picture

Status: Needs review » Needs work

Same issue... only happens when there's a component on the page with an image.

I don't think it's on our end as one of our devs has been working with it since last week without issue, but :shrug:

https://youtu.be/rWI4RRmkjjI

q0rban’s picture

Thank you for the video, that was very helpful in replicating the issue!

It seems that this is an issue with Apache rejecting the response due to response headers being too large:

[Sat Oct 12 18:34:23.700729 2024] [proxy_http:warn] [pid 26575:tid 26588] (28)No space left on device: [client 10.0.0.52:49552] AH10124: header size is over the limit allowed by ResponseFieldSize (8192 bytes). Bad response header: 'Attach-Settings: {"ajaxPageState":{"theme":"stark","theme_token"[...]\\u0022storage\\u0022:{\\u0022target_type\\u0022:\\u0022media\\u0022},', referer: https://mr323-zbzg3fgtmxhjnhiibdr2ns38ldwjk3r8.tugboatqa.com/xb/node/1/component/d81c9a76-cd42-4297-bda1-d669d7e26d3a

While the HTTP spec doesn't specifically limit the size of headers, it is common for many proxies to limit header sizes to 8KB. For that reason, it might be best to transfer any data in the response itself, rather than in headers.

kristen pol’s picture

Thanks for debugging. Not sure what I we can do on the SDDS end... anything?

q0rban’s picture

Thanks for debugging. Not sure what I we can do on the SDDS end... anything?

I'm not sure! Do you know what is setting those response headers? Is it coming from SDDS or Experience Builder? Or something else?

effulgentsia’s picture

It's an XB issue. I'll open an issue for it when I have a spare moment. Thanks for discovering it!

kristen pol’s picture

Thanks 🙏

wim leers’s picture

q0rban’s picture

kristen pol’s picture

Yes :(

q0rban’s picture

Status: Needs work » Needs review

@kristen-pol, now that #3481343: XBEndpointRenderer adds response headers that sometimes exceed common server limits is in, I've recreated the Tugboat Preview here. I tried to replicate the issue we were encountering before, but it seems like enough has changed that I'm not sure how to do so. Can you take a look to see if you can replicate? Thank you!

kristen pol’s picture

Assigned: Unassigned » kristen pol

Let me take a look :)

kristen pol’s picture

Assigned: kristen pol » Unassigned
Status: Needs review » Needs work

I'm having the same issue I was having on my local a couple days ago... my understanding is there was a bug that has been fixed since then... I'm unclear how we can get the preview to update to the latest code.

Here's a video of the issue (it's uploading now)... you can't drag anything into the desktop area... there were no related errors.

https://youtu.be/0lTPqtZXwNc

q0rban’s picture

I have rebuilt the Tugboat Preview. I also rebased from 0.x.

Even though #3481343: XBEndpointRenderer adds response headers that sometimes exceed common server limits is in, it seems like we are still getting a response header over 8kb.

[Fri Nov 15 21:04:29.268970 2024] [proxy_http:warn] [pid 498:tid 508] (28)No space left on device: [client 10.0.0.109:36628] AH10124: header size is over the limit allowed by ResponseFieldSize (8192 bytes). Bad response header: 'Attach-Settings: {"ajaxPageState":{"theme":"xb_stark","theme_tok[...]refix":"","currentPath":"xb-field-form\\/node\\/1","currentPathIsA', referer: https://mr323-wxhia2wxtwznpslehfq0oh9fqczoqr9s.tugboatqa.com/xb/node/1/component/ea7bb6e5-fbf8-481c-9e7e-1200d1d739f7
[Fri Nov 15 21:04:29.269211 2024] [proxy_http:warn] [pid 498:tid 508] [client 10.0.0.109:36628] AH01106: bad HTTP/1.1 header returned by /xb-field-form/node/1 (GET), referer: https://mr323-wxhia2wxtwznpslehfq0oh9fqczoqr9s.tugboatqa.com/xb/node/1/component/ea7bb6e5-fbf8-481c-9e7e-1200d1d739f7

I reopened #3481343: XBEndpointRenderer adds response headers that sometimes exceed common server limits since it seems like the MR didn't get merged in.

kristen pol’s picture

Thanks 🙏

q0rban’s picture

Status: Needs work » Needs review

@kristen-pol, looks like #3481343: XBEndpointRenderer adds response headers that sometimes exceed common server limits is in properly now, and I think our issue is fixed! Can you confirm?

kristen pol’s picture

Assigned: Unassigned » kristen pol

Looking now.

kristen pol’s picture

Assigned: kristen pol » Unassigned
Status: Needs review » Needs work

Actually... there's no live preview button.

q0rban’s picture

Sorry, it must have expired. I closed and reopened the MR, so it's building again. It will last 5 days.

q0rban’s picture

Status: Needs work » Needs review
kristen pol’s picture

Status: Needs review » Reviewed & tested by the community

Sorry, I should have remembered that by now o_O

It's working as expected! Thanks!

Video is currently uploading:

https://youtu.be/dYPWCiCK968

effulgentsia’s picture

Status: Reviewed & tested by the community » Fixed

This is awesome! Merged to 0.x.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.