Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/build/internal/task: TestTweetRelease failures #57062

Closed
gopherbot opened this issue Dec 2, 2022 · 4 comments
Closed

x/build/internal/task: TestTweetRelease failures #57062

gopherbot opened this issue Dec 2, 2022 · 4 comments
Assignees
Labels
Builders x/build issues (builders, bots, dashboards) NeedsFix The path to resolution is known, but the work has not been done.
Milestone

Comments

@gopherbot
Copy link

#!watchflakes
post <- pkg == "golang.org/x/build/internal/task" && test == "TestTweetRelease"

Issue created automatically to collect these failures.

Example (log):

2022/12/02 22:30:47 extracted tarball into /workdir/tmp/TestTagXRepos1969477999/001/linux-amd64-longtest/0: 1 files, 1 dirs (200.076µs)
2022/12/02 22:30:47 extracted tarball into /workdir/tmp/TestTagXRepos1969477999/001/linux-amd64-longtest/0/repo: 4 files, 2 dirs (335.891µs)
2022/12/02 22:30:47 extracted tarball into /workdir/tmp/TestTagSingleRepo2425577604/001/linux-amd64-longtest/0: 1 files, 1 dirs (244.621µs)
2022/12/02 22:30:47 extracted tarball into /workdir/tmp/TestTagSingleRepo2425577604/001/linux-amd64-longtest/0/repo: 3 files, 1 dirs (266.544µs)
--- FAIL: TestTweetRelease (5.06s)
    --- FAIL: TestTweetRelease/minor (5.04s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/minor-solo (0.01s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/beta (0.00s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/rc (0.00s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/major (0.01s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error

watchflakes

@gopherbot gopherbot added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Dec 2, 2022
@gopherbot
Copy link
Author

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "golang.org/x/build/internal/task" && test == "TestTweetRelease"
2022-12-02 22:20 linux-amd64-longtest build@5b51d6fa go@7ab36153 x/build/internal/task.TestTweetRelease (log)
2022/12/02 22:30:47 extracted tarball into /workdir/tmp/TestTagXRepos1969477999/001/linux-amd64-longtest/0: 1 files, 1 dirs (200.076µs)
2022/12/02 22:30:47 extracted tarball into /workdir/tmp/TestTagXRepos1969477999/001/linux-amd64-longtest/0/repo: 4 files, 2 dirs (335.891µs)
2022/12/02 22:30:47 extracted tarball into /workdir/tmp/TestTagSingleRepo2425577604/001/linux-amd64-longtest/0: 1 files, 1 dirs (244.621µs)
2022/12/02 22:30:47 extracted tarball into /workdir/tmp/TestTagSingleRepo2425577604/001/linux-amd64-longtest/0/repo: 3 files, 1 dirs (266.544µs)
--- FAIL: TestTweetRelease (5.06s)
    --- FAIL: TestTweetRelease/minor (5.04s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/minor-solo (0.01s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/beta (0.00s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/rc (0.00s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/major (0.01s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
2022-12-02 22:20 windows-amd64-longtest build@5b51d6fa go@7ab36153 x/build/internal/task.TestTweetRelease (log)
--- FAIL: TestTweetRelease (2.46s)
    --- FAIL: TestTweetRelease/minor (0.02s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/minor-solo (0.00s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/beta (0.00s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/rc (2.43s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error
    --- FAIL: TestTweetRelease/major (0.00s)
        tweet_test.go:178: got a non-nil error: non-200 OK status code: 500 Internal Server Error

watchflakes

@gopherbot gopherbot added the Builders x/build issues (builders, bots, dashboards) label Dec 2, 2022
@gopherbot gopherbot added this to the Unreleased milestone Dec 2, 2022
@dmitshur dmitshur self-assigned this Jun 7, 2023
@dmitshur dmitshur added NeedsFix The path to resolution is known, but the work has not been done. and removed NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. labels Jun 7, 2023
@gopherbot
Copy link
Author

Change https://go.dev/cl/504519 mentions this issue: internal/task: replace use of go.dev/dl/?mode=json API with local params

@gopherbot
Copy link
Author

Change https://go.dev/cl/504520 mentions this issue: internal/task: simplify test case inputs in TestTweetRelease

@gopherbot
Copy link
Author

Change https://go.dev/cl/504518 mentions this issue: internal/task: prepare to drop use of go.dev/dl/?mode=json API

gopherbot pushed a commit to golang/build that referenced this issue Jun 22, 2023
Use task.WebsiteFile as values, not pointers, throughout x/build.
It was already a value in some places, and it's a value in x/website
where the original version of this type lives. It's simpler and fast
enough for the needs of relui.

This prepares for the next two CLs that drop network calls for
fetching a random release archive by making their diff smaller.

For golang/go#57062.

Change-Id: Ib43a2e4cec6546c6cd7ec9de9d0ec6f8b17e0c3c
Reviewed-on: https://go-review.googlesource.com/c/build/+/504518
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
gopherbot pushed a commit to golang/build that referenced this issue Jun 22, 2023
The tweet tasks are some of the earliest we've automated for relui.
In fact, they were ready for use with the release process ahead of
the rest of relui, so the only place to add them was the CLI-based
x/build/cmd/releasebot command.

Since release coordinators needed to provide all of the task inputs as
a JSON object over CLI, at the time, it was easier to fetch information
about the Go release artifacts that had been published for the very Go
release being made by making a network call to the go.dev/dl/?mode=json
API.

By now, relui is complete and has all the steps interconnected without
toil of invoking individual release steps manually, so it's easy for it
to pass the release artifacts to the tweeting tasks directly, and avoid
having to ask the website for the release it itself published (silly!).

We can also drop the lightweight checking of bad version strings done
in oneOrTwoGoVersions. Those typos can't happen now since relui picks
the next version to release automatically.

This CL does the re-wiring to drop the use of API from TweetRelease but
makes almost no changes to the current comprehensive tweet tests, and
they're still passing. The next change simplifies the tests to drop
their temporary use of the API.

For golang/go#57062.

Change-Id: I60efc8c8c96152ff52c9fb5cc0f91262f0d8f494
Reviewed-on: https://go-review.googlesource.com/c/build/+/504519
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Dmitri Shuralyov <dmitshur@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Builders x/build issues (builders, bots, dashboards) NeedsFix The path to resolution is known, but the work has not been done.
Projects
Archived in project
Status: Done
Development

No branches or pull requests

2 participants