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

Envoy: init at 1.3.0 #27629

Merged
merged 7 commits into from Aug 3, 2017
Merged

Envoy: init at 1.3.0 #27629

merged 7 commits into from Aug 3, 2017

Conversation

cstrahan
Copy link
Contributor

@cstrahan cstrahan commented Jul 25, 2017

Motivation for this change

I'm using Envoy at work.

Things done
  • Tested using sandboxing
  • Built on platform(s)
    • NixOS
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

I don't know if the libevent bump breaks anything, or possibly causes a mass rebuild.

Requisite package updates (and additions) have been split into separate commits.

@cstrahan
Copy link
Contributor Author

/cc @benley, since I figure you might be interested, and I presume you have much more experience with bazel than I.

"-O2",

- # Security hardening on by default.
- # Conservative choice; -D_FORTIFY_SOURCE=2 may be unsafe in some cases.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we use _fortify_source=2 right?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah. Bazel tries to unset that option somewhere, and then gcc complains loudly.

At the moment I have hardeningDisable = "all" set, but I don't think that's applying (because, IIUC, the bazel is clearing the environment) -- the net effect being that I think our hardening is applying any way.

# BUILD file from (we could instead just include the contents directly);
# however, this sets us up to be ready if we (or upstream) decide to split
# things into multiple bazel repos, instead of one.
ccTargets = {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

imho it would be slightly more clear to call this cc_libraries since that is what is generated from it

name = "protobuf_bzl",
path = "${protobuf_bzl}",
# We only want protobuf.bzl, so don't support building out of this repo.
build_file_content = "",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couldn't you use local_repository instead of new_local_repository here and omit the empty build_file_content attr?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@benley The theory is, I think, that bazel will parse the BUILD file in that git repo. That comment is originally from the Envoy devs. Whether its really necessary, or just being paranoid, I'm not certain.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hrm, ok. It's certainly not harmful the way you have it, I was just wondering.


# Envoy checks at runtime that the git sha is valid,
# so we really can't avoid putting some sort of sha here.
rev = "3afc7712a04907ffd25ed497626639febfe65735";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I presume this is the commit matching the "v${version}" tag ... it would be cool if there were a way to collect this commit sha at build time instead of relying on humans to keep the two in sync.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, that part kind of bums me out. I might see if I can patch out the self-destruct code that panics when the SHA doesn't look right, and then we could just use version.

@cstrahan cstrahan mentioned this pull request Aug 3, 2017
8 tasks
Also, include libcrypto.a and libdecrepit.a.
A beautiful stack trace pretty printer for C++
The LightStep distributed tracing library for C++.

See: http://lightstep.com
A fast JSON parser/generator for C++ with both SAX/DOM style API.

See: http://rapidjson.org/
L7 proxy and communication bus designed for large modern service
oriented architectures.

See: https://lyft.github.io/envoy/
@cstrahan cstrahan merged commit c1d8a84 into NixOS:master Aug 3, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants