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: investigate possibility of supporting Go tests that require use of Docker in trybots/builders #37633

Open
jba opened this issue Mar 3, 2020 · 7 comments

Comments

@jba
Copy link
Contributor

@jba jba commented Mar 3, 2020

We would like the trybots to be able to run a docker container.

The discovery site needs a postgres database to run tests, and we've been starting it in our CI with docker run.

An alternative would be to install postgres in the trybot image, but that's probably more difficult and definitely less general.

@gopherbot gopherbot added this to the Unreleased milestone Mar 3, 2020
@gopherbot gopherbot added the Builders label Mar 3, 2020
@jba jba added FeatureRequest and removed Builders labels Mar 3, 2020
@gopherbot gopherbot added the Builders label Mar 3, 2020
@dmitshur

This comment has been minimized.

Copy link
Member

@dmitshur dmitshur commented Mar 3, 2020

/cc @cagedmantis @toothrot

IIRC it may have been @findleyr that had the same feature requests for x/tools trybots.

@dmitshur dmitshur changed the title x/build: let trybots run docker x/build: investigate possibility of supporting Go tests that require use of Docker in trybots/builders Mar 3, 2020
@dmitshur

This comment has been minimized.

Copy link
Member

@dmitshur dmitshur commented Mar 3, 2020

@jba Docker does not support every platform that Go supports and gets tested on. Is the scope of this feature request limited to a subset of GOOS/GOARCH pairs? For example, just linux/amd64 and potentially others?

@toothrot

This comment has been minimized.

Copy link
Contributor

@toothrot toothrot commented Mar 3, 2020

If the target for the discovery site is always Docker, an alternative would be to configure a Cloud Build run to be able to publish Trybot results, rather than using the normal Trybots for this specific scenario.

@findleyr

This comment has been minimized.

Copy link

@findleyr findleyr commented Mar 3, 2020

Yep, I discussed this with Jonathan (thanks @jba for posting this issue). I think this might not be possible with the current Trybot implementation. For example, exposing Docker probably means exposing sudoless docker, which comes with a bunch of security concerns.

Another option might be to integrate TryBot functionality with other CI tooling, for example Cloud Build. TryBots have many nice features (e.g. gating on Run-Trybots +1) that could perhaps be separated from the actual CI.

@toothrot

This comment has been minimized.

Copy link
Contributor

@toothrot toothrot commented Mar 3, 2020

If you're using Cloud Build, it might not be necessary to gate Run-Trybots. Out of curiosity, what other features are you thinking of?

@findleyr

This comment has been minimized.

Copy link

@findleyr findleyr commented Mar 3, 2020

Perhaps, though I'd prefer still gating on Run-Trybots

Another feature is hosting artifacts in a public GCS bucket, and posting them back to the the CL (not something GCB does out of the box).

@jba

This comment has been minimized.

Copy link
Contributor Author

@jba jba commented Mar 10, 2020

Could the trybots execute a gcloud command? Then we could use the trybot to trigger the GCB run.

That would give us gating, but not public artifacts.

It would imply that the trybots have some sort of GCP auth on them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
5 participants
You can’t perform that action at this time.