Skip to content

dist: Add debian packaging#17979

Merged
phlax merged 25 commits intoenvoyproxy:mainfrom
phlax:dist-debian
Apr 18, 2022
Merged

dist: Add debian packaging#17979
phlax merged 25 commits intoenvoyproxy:mainfrom
phlax:dist-debian

Conversation

@phlax
Copy link
Member

@phlax phlax commented Sep 3, 2021

Commit Message: dist: Add debian packaging
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated:]
[Optional API Considerations:]

@repokitteh-read-only repokitteh-read-only bot added the deps Approval required for changes to Envoy's external dependencies label Sep 3, 2021
@repokitteh-read-only
Copy link

CC @envoyproxy/dependency-shepherds: Your approval is needed for changes made to (bazel/.*repos.*\.bzl)|(bazel/dependency_imports\.bzl)|(api/bazel/.*\.bzl)|(.*/requirements\.txt)|(.*\.patch).

🐱

Caused by: #17979 was opened by phlax.

see: more, trace.

@phlax phlax marked this pull request as draft September 3, 2021 11:29
@phlax phlax force-pushed the dist-debian branch 12 times, most recently from e349a3c to 605cffe Compare September 5, 2021 05:50
@phlax phlax force-pushed the dist-debian branch 6 times, most recently from 4116d9d to 451e77b Compare September 9, 2021 15:40
@phlax
Copy link
Member Author

phlax commented Mar 15, 2022

Might still be worth checking out if there is an actual aarch64-linux-gnu-gcc available in your build container in case some other library of yours actually needs it.

re this - see this commit - https://github.com/envoyproxy/envoy-build-tools/pull/166/files#diff-de88d82423c82fcf8e66cf5d50f69b4de3ca587502583ffa1fdd0c48b504cadeR162-R163 - altho im a bit baffled why its not working

atm, rules_python doesnt have good support for cython on mac - and non-precompiled-but-needs-to-be packages on arm are best avoided - even if they can be made to work they often add a lot of build time

that said - it would be good to know why this hasnt worked - altho wrt to the psutil dep, the case for keeping it was too weak to justify spending any time on it

re arm on docker - i think qemu is probs the easiest way to test on an x86 machine (see eg https://www.stereolabs.com/docs/docker/building-arm-container-on-x86/)

@MarkusTeufelberger
Copy link

A lot of your build process for that image was/is cached. I'm not 100% up-to-date on when Docker would actually rebuild something, but I assume that since the Dockerfile itself didn't change, you might actually have some rather unexpected things in those build containers... Another option would be that sourcing this other file caused the shell to close earlier than expected, but I'm also not 100% on that one.

Yes, I know about QEMU, but debugging ARM64 build containers for bazel is a few hops too far into that specific rabbit hole, sorry.

@phlax
Copy link
Member Author

phlax commented Mar 15, 2022

debugging ARM64 build containers for bazel is a few hops too far into that specific rabbit hole,

yep, my thought too - hence the easier path of just removing the problem dep

@phlax
Copy link
Member Author

phlax commented Mar 15, 2022

re the docker build - the artefacts/context changed so that would cause a rebuild - not sure that there is caching going on in the envoy-build-tools build - so i think it rebuilds all on every run regardless

if it hadnt rebuilt theres a bunch of things that would not work (ie on x86) - it took quite a bit of local/staging testing to get it working

currently none of the tooling is actually tested on arm - with the exception of the run that is added in this pr - so its mostly not something we hit

@MarkusTeufelberger
Copy link

@phlax
Copy link
Member Author

phlax commented Mar 15, 2022

maybe - altho im wondering whether any of the subsequent code there would be necessary - gcc is already installed at this point, and links etc should have been made - defo a possibility tho

@MarkusTeufelberger
Copy link

Well you install gcc-9 from some PPA, not from official releases (likely because it is not in 18.04 - it would be in 20.04 though...). Not sure after all your packages which would be the default (no suffix) gcc in that container otherwise...

@phlax
Copy link
Member Author

phlax commented Mar 16, 2022

aargghh - this is still an issue as yarl has to be compiled on 3.10 (at least for ARM)

re general points on the image @MarkusTeufelberger - i would encourage you to raise ticket/s in the envoy-build-tools repo and/or raise it on the relevant slack channel

phlax added 2 commits March 17, 2022 08:34
Signed-off-by: Ryan Northey <ryan@synca.io>
Signed-off-by: Ryan Northey <ryan@synca.io>
@phlax
Copy link
Member Author

phlax commented Mar 17, 2022

@MarkusTeufelberger I have raised a PR to update the build image with your fix here #20391

Ive also picked the update on this PR, so hopefully the arm build should be fixed now - thanks for that

Signed-off-by: Ryan Northey <ryan@synca.io>
@phlax
Copy link
Member Author

phlax commented Mar 18, 2022

/retest

@repokitteh-read-only
Copy link

Retrying Azure Pipelines:
Retried failed jobs in: envoy-presubmit

🐱

Caused by: a #17979 (comment) was created by @phlax.

see: more, trace.

@phlax
Copy link
Member Author

phlax commented Mar 18, 2022

cc @lizan tests are passing again

Signed-off-by: Ryan Northey <ryan@synca.io>
ci/do_ci.sh Outdated
# and the packages signed with it, for the purpose of testing only.
if ! gpg --list-secret-keys "*"; then
export PACKAGES_MAINTAINER_NAME="Envoy CI"
export PACKAGES_MAINTAINER_EMAIL="envoy@snake.oil"
Copy link
Member

Choose a reason for hiding this comment

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

Is it real mail? I do not see it in the doc.

Copy link
Member Author

Choose a reason for hiding this comment

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

it is not - and is intended to denote that - perhaps this could be more explicit in some way

Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link
Member Author

Choose a reason for hiding this comment

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

@phlax
Copy link
Member Author

phlax commented Mar 25, 2022

@lizan would you mind giving this another pass - im v open to any suggestions on how we structure this

@adisuissa
Copy link
Contributor

@lizan can you PTAL?

@alyssawilk
Copy link
Contributor

@lizan this has been stalled 9 days waiting on your review. Can you please take a look today?

@phlax
Copy link
Member Author

phlax commented Apr 7, 2022

ill merge main now, and check its not failing

phlax added 2 commits April 7, 2022 14:29
Signed-off-by: Ryan Northey <ryan@synca.io>
Signed-off-by: Ryan Northey <ryan@synca.io>
@lizan
Copy link
Member

lizan commented Apr 8, 2022

Check CI? Otherwise LGTM.
/retest

@repokitteh-read-only
Copy link

Retrying Azure Pipelines:
Retried failed jobs in: envoy-presubmit

🐱

Caused by: a #17979 (comment) was created by @lizan.

see: more, trace.

Copy link
Member

@zuercher zuercher left a comment

Choose a reason for hiding this comment

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

Approving based on @lizan's comment now that the tests passed. @phlax I'll let you merge it when you're ready.

@phlax
Copy link
Member Author

phlax commented Apr 18, 2022

ill merge this now - i suspect this will take a few iterations to optimize, but this is a major milestone/component to adding a release pipeline

@phlax phlax merged commit fc7151e into envoyproxy:main Apr 18, 2022
vehre-x41 pushed a commit to vehre-x41/envoy that referenced this pull request Apr 19, 2022
Signed-off-by: Ryan Northey <ryan@synca.io>

Signed-off-by: Andre Vehreschild <vehre@x41-dsec.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

deps Approval required for changes to Envoy's external dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants