Project

General

Profile

Feature #12156

Feature #14877: Donation campaign 2018

Have a static <title> on /home regardless of ikiwiki meta title

Added by sajolida about 3 years ago. Updated over 1 year ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
Fundraising
Target version:
Start date:
01/20/2017
Due date:
% Done:

100%

Feature Branch:
web/12156-constant-title-on-home
Type of work:
Website
Blueprint:
Starter:
Affected tool:

Description

The idea behind having a /home page for people inside Tails is to be able to adapt it when we want to outreach about the donation campaign, possible survey, onboarding process, etc. But changing [[!meta title breaks the test suite which relies on an image of the title bar. See #12134#note-7. Before changing this again, possibly for the 2017 donation campaign we could make it possible to display a different title in the page and in the title bar.

Associated revisions

Revision 1d105f52 (diff)
Added by sajolida over 1 year ago

Don't break the test suite when changing the headline of /home (Will-fix: #12156)

The test suite needs a stable <title> but ikiwiki uses [[!meta title]]
for both <title> and the page headline.

This commit overwrites <title> using JavaScript.

Using "Tails" as <title> is generic enough to make sense while
preventing to have to handle translations.

Revision 19a125e9
Added by intrigeri over 1 year ago

Merge remote-tracking branch 'origin/web/12156-constant-title-on-home+force-all-tests' (Fix-committed: #12156)

History

#1 Updated by sajolida about 3 years ago

I'm making this a subticket of the donation campaign for 2017 which might be the next time we break the test suite because of that. Otherwise it should be tackled earlier if we want to change this title earlier. And it should be tackled by whoever will want to change this title first :) Very likely myself...

#2 Updated by Anonymous almost 3 years ago

  • Assignee set to sajolida
  • QA Check set to Info Needed

The note you are linking to in the description does not exist. May you please clarify what this is about?
Thanks! Please reassign to me afterwards.

#3 Updated by sajolida almost 3 years ago

  • Description updated (diff)
  • Assignee deleted (sajolida)
  • QA Check deleted (Info Needed)

I fixed the description. It should be #12134#note-7. It seems to me that the corresponding fix in the test suite is 1320ee5fe7, which we might be able to actually do ourselves when changing the title of /home. If this works for anonym, than that would be another option...

#4 Updated by Anonymous about 2 years ago

  • Parent task changed from #12035 to #14877

We did not work on this for 2017's donation campaign, adding this to the todo list of next year.

#5 Updated by sajolida over 1 year ago

  • Category set to Fundraising
  • Assignee set to sajolida
  • Target version set to Tails_3.10.1

#6 Updated by sajolida over 1 year ago

  • QA Check set to Ready for QA
  • Feature Branch set to web/12156-constant-title-on-home

I have a branch that works around that with a bit of JavaScript :)

I'll monitor Jenkins to make sure I'm not breaking the test suite before assigning this to review to somebody.

#7 Updated by sajolida over 1 year ago

  • Status changed from Confirmed to In Progress

Applied in changeset commit:cf6711fc43ad1ffc467383f1f22ca4861d390b0f.

#8 Updated by sajolida over 1 year ago

  • Assignee changed from sajolida to intrigeri

Trying to read the output of the test suite for the first time:

1. It seems like the failures I have on test_Tails_ISO_web-12156-constant-title-on-home are unrelated to my changes:

cucumber features/apt.feature:14 # Scenario: Install packages using apt
cucumber features/emergency_shutdown.feature:13 # Scenario: Tails erases memory on DVD boot medium removal: aufs read-write branch
cucumber features/additional_software_packages.feature:8 # Scenario: Additional software packages are installed even without network

2. But I can't find anything releveant when searching for "Tails homepage" in the debug.log so I'm not sure either that it passes...

intrigeri: Do you mind having a look?

#9 Updated by intrigeri over 1 year ago

  • Assignee changed from intrigeri to sajolida
  • % Done changed from 0 to 10
  • QA Check deleted (Ready for QA)

Two hints:

  • I think all the affected scenarios are tagged fragile so they won't run on Jenkins by default. To force them to run, add the +force-all-tests suffix to the name of your branch.
  • I think you need to look for "startup page" and not "Tails homepage": the latter is https://tails.boum.org/ (which is not relevant here) while the former is /home (that's what you want).

#10 Updated by intrigeri over 1 year ago

intrigeri wrote:

Two hints:

  • I think all the affected scenarios are tagged fragile so they won't run on Jenkins by default. To force them to run, add the +force-all-tests suffix to the name of your branch.

I've just renamed your branch as suggested, hoping it will help :)

#11 Updated by sajolida over 1 year ago

Thanks! The tests are pending right now. I'll keep a look on them :)

#12 Updated by sajolida over 1 year ago

  • Assignee changed from sajolida to intrigeri
  • QA Check set to Info Needed

Meta: I'm happy to play with the test suite like that (without clocking everything) and learn more about how our CI is working. But maybe it's not the most productive us of our time :) I'll let you tell me.

So the build of the tests started and failed:

https://jenkins.tails.boum.org/job/test_Tails_ISO_web-12156-constant-title-on-home-force-all-tests/lastFailedBuild/console

The reason I understand is that it was not able to copy the ISO from the build of the image:

Unable to find a build for artifact copy from: build_Tails_ISO_web-12156-constant-title-on-home-force-all-tests

While the build of the image is successful, earlier in date, and with the same commit:

https://jenkins.tails.boum.org/job/build_Tails_ISO_web-12156-constant-title-on-home-force-all-tests/1/

How is that?

#13 Updated by intrigeri over 1 year ago

  • Assignee changed from intrigeri to sajolida
  • QA Check changed from Info Needed to Dev Needed

Meta: I'm happy to play with the test suite like that (without clocking everything) and learn more about how our CI is working. But maybe it's not the most productive us of our time :) I'll let you tell me.

Meta: I'm very happy you're willing to learn more about our CI. Now, until we have someone with the skills & budget to turn your feedback into actual improvements, don't expect too much. So feel free to learn just enough for you to make good use of the current state of things and to report issues: whatever list of issues we come up with will be useful when it's time to take a step back and decide what's the best way forward :)

So the build of the tests started and failed:
https://jenkins.tails.boum.org/job/test_Tails_ISO_web-12156-constant-title-on-home-force-all-tests/lastFailedBuild/console

FYI links with "lastFailedBuild" are not stable. In this case, https://jenkins.tails.boum.org/job/test_Tails_ISO_web-12156-constant-title-on-home-force-all-tests/1/console is the stable link to that run.

The reason I understand is that it was not able to copy the ISO from the build of the image:

> Unable to find a build for artifact copy from: build_Tails_ISO_web-12156-constant-title-on-home-force-all-tests
> 

Right. It looks like you've manually triggered this test suite run. Correct?
I guess you did that because the test suite had not run after the ISO was built yesterday afternoon UTC. I think that's because our on-call sysadmin rebooted systems around that time.

Unfortunately, triggering test suite runs manually does not work: with the current design/implementation of our CI, any test suite run must be triggered by an ISO build and will inherit its "artifacts" (i.e. ISO image). Jobs 2 and 3 (that are currently running) don't expose this problem and should give you the info you're looking for :)

#14 Updated by sajolida over 1 year ago

FYI links with "lastFailedBuild" are not stable. In this case, https://jenkins.tails.boum.org/job/test_Tails_ISO_web-12156-constant-title-on-home-force-all-tests/1/console is the stable link to that run.

Ok.

Right. It looks like you've manually triggered this test suite run. Correct?

Correct.

Unfortunately, triggering test suite runs manually does not work: with the current design/implementation of our CI, any test suite run must be triggered by an ISO build and will inherit its "artifacts" (i.e. ISO image). Jobs 2 and 3 (that are currently running) don't expose this problem and should give you the info you're looking for :)

In job 2, I see that my tests failed every single time on "try_for" in
"the network connection is ready"
(features/support/helpers/misc_helpers.rb:90). So I'm tempted to think
that it's because of some network fragility and not my changes.

In doubt, I created a better version
features/images/TorBrowserSaveOutputFileSelected.png and will continue
monitoring this...

#15 Updated by sajolida over 1 year ago

  • Assignee changed from sajolida to intrigeri
  • QA Check changed from Dev Needed to Info Needed

I got the same error on build #5 with my updated commit. Now I don't know what to do...

Note that we won't block on this to launch the donation campaign, so let's take it easy.

#16 Updated by intrigeri over 1 year ago

I got the same error on build #5 with my updated commit. Now I don't know what to do...

The screenshots for these tests show that the startup page was correctly loaded: https://jenkins.tails.boum.org/view/Tails_ISO/job/test_Tails_ISO_web-12156-constant-title-on-home-force-all-tests/5/artifact/build-artifacts/03%3A54%3A36_The_Tor_Browser_is_using_the_web_browser-specific_SocksPort.png, https://jenkins.tails.boum.org/view/Tails_ISO/job/test_Tails_ISO_web-12156-constant-title-on-home-force-all-tests/5/artifact/build-artifacts/04%3A00%3A01_The_Tor_Browser_directory_is_usable.png, https://jenkins.tails.boum.org/view/Tails_ISO/job/test_Tails_ISO_web-12156-constant-title-on-home-force-all-tests/5/artifact/build-artifacts/04%3A01%3A42_Downloading_files_with_the_Tor_Browser.png.

But the test suite cannot find what it's looking for on this branch. According to debug.log it's looking for Tails - Tor Browser but the screenshot show that the title of the window is Tails - News - Tor Browser. That's because Tor Browser is fetching the production website's /home page. Given meta title="Welcome to Tails" was not pushed there, even if the test suite was looking for the correct window title, it could not find it (yet).

So sadly, I don't think there's an easy way to test this before merging the wiki/src changes to master. And if we merge those bits without merging the corresponding test suite adjustment, then the test suite will start breaking for every branch. So I'm going to do an extra careful review + test and if happy, merge this into master → stable → devel.

#17 Updated by intrigeri over 1 year ago

  • % Done changed from 10 to 80
  • QA Check changed from Info Needed to Ready for QA

intrigeri wrote:

So I'm going to do an extra careful review + test and if happy, merge this into master → stable → devel.

Done! I'll check the next test suite run on a branch that has +force-all-tests, to ensure this did not break anything.

#18 Updated by intrigeri over 1 year ago

  • Status changed from In Progress to Resolved
  • Assignee deleted (intrigeri)
  • % Done changed from 80 to 100
  • QA Check changed from Ready for QA to Pass

The only failure on https://jenkins.tails.boum.org/view/Tails_ISO/job/test_Tails_ISO_feature-15936-linux-4.18-stable-bump-debian-force-all-tests/4/ is unrelated. Congrats for your first contribution to our test suite :)

#19 Updated by sajolida over 1 year ago

Congrats for your first contribution to our test suite :)

Yeah! :)

Also available in: Atom PDF