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

dev: can't run dev builder without many unnecessary prereqs #82444

Open
andreimatei opened this issue Jun 4, 2022 · 2 comments
Open

dev: can't run dev builder without many unnecessary prereqs #82444

andreimatei opened this issue Jun 4, 2022 · 2 comments
Assignees
Labels
C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. P-3 Issues/test failures with no fix SLA T-dev-inf

Comments

@andreimatei
Copy link
Contributor

andreimatei commented Jun 4, 2022

We have a bazel builder container whose purpose is, I believe, to let people build CRDB without having to install stuff on their local system. In practice, however, getting to that container requires installing all sorts of things, which defeats its purpose. The intended way to run this container is, I believe, dev container. But:

  1. dev requires bazel to be installed in order to run anything - including dev help and dev builder. Installing bazel is a pain. I think this requirement comes from dev-the-shell-script needing bazel in order to build dev-the-binary.

  2. dev doctor needs to pass once before any other dev subcommand works - again, including dev help and dev builder. If dev doctor never passed before, you get messages about how dev doctor's status needs to be updated. dev doctor requires a cmake upgrade, making it a big pain and again defeating the purpose of the container.

  3. I failed to run the cockroachdb/bazel container by hand, with Docker but without going through dev. The first problem is that we don't seem to have a latest tag applied to the container images. Even when using a image id, I failed to run the container because of some root issue. I haven't looked into how dev builder does it.

Filing this after looking over @ipopov's shoulder trying to build crdb for the first time.

Jira issue: CRDB-16388

Epic CRDB-17171

@andreimatei andreimatei added the C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. label Jun 4, 2022
@rickystewart
Copy link
Collaborator

#82522 will take care of the requirement to run dev doctor.

I think this requirement comes from dev-the-shell-script needing bazel in order to build dev-the-binary

This is exactly right.

I didn't know that people were having trouble getting bazel (bazelisk) installed. The bazelisk binaries themselves are very small, so we could conceivably vendor them in-tree. 🤷

rickystewart added a commit to rickystewart/cockroach that referenced this issue Jun 7, 2022
The `doctor` checks aren't really needed here.

Part of cockroachdb#82444.

Release note: None
@andreimatei
Copy link
Contributor Author

I didn't know that people were having trouble getting bazel (bazelisk) installed. The bazelisk binaries themselves are very small, so we could conceivably vendor them in-tree. shrug

Even figuring out that there is such a thing as bazelisk is too much hurdle. Not to mention that the instructions for installing bazelisk talk about OSX, then say that on windows you do choco install, and then conspicuously stop with no Linux.
Instead of pushing on getting parts of the build working more easily, I for one would prefer an easier way to get into that container. Like, perhaps we could get dev builder working exclusively in shell. Or, otherwise, if we had instructions on how to use docker directly.
If I want to build outside of the container, I don't mind the pain of figuring out how to install bazel and everything else (particularly if we provide good instructions).

craig bot pushed a commit that referenced this issue Jun 7, 2022
81325: DOC-3097: Updated SQL diagrams for SHOW DEFAULT PRIVILEGES r=RichardJCai a=nickvigilante

Fixes DOC-3097

Release note: None

82348: sql: COPY benchmark roachtest r=cucaroach a=cucaroach

Simple roachtest benchmark performing a single node copy of a 750k line
CSV (TPCH lineitem table).  On my gceworker CRDB does it in 5773 rows/s
and PG does it in 36945 rows/s.

Fixes: #82348 

Release note: none


82522: dev: skip `doctor` check for `dev builder` or `dev help` r=rail a=rickystewart

The `doctor` checks aren't really needed here.

Part of #82444.

Release note: None

Co-authored-by: Nick Vigilante <[email protected]>
Co-authored-by: Tommy Reilly <[email protected]>
Co-authored-by: Ricky Stewart <[email protected]>
blathers-crl bot pushed a commit that referenced this issue Jun 7, 2022
The `doctor` checks aren't really needed here.

Part of #82444.

Release note: None
@exalate-issue-sync exalate-issue-sync bot added the P-3 Issues/test failures with no fix SLA label Dec 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. P-3 Issues/test failures with no fix SLA T-dev-inf
Projects
None yet
Development

No branches or pull requests

2 participants