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
ARROW-6581: [C++] Fix fuzzit job submission #5407
Conversation
@kszucs How do I run the crossbow fuzzit build here? |
@ursabot crossbow submit -g fuzzit |
|
@ursabot crossbow submit docker-cpp-fuzzit |
AMD64 Conda Crossbow Submit (#62855) builder has been succeeded. Revision: 1306f15 Submitted crossbow builds: ursa-labs/crossbow @ ursabot-194
|
ci/docker_build_and_fuzzit.sh
Outdated
@@ -40,11 +41,11 @@ cp ./relwithdebinfo/arrow-ipc-fuzzing-test ./relwithdebinfo/out/fuzzer | |||
ldd ./relwithdebinfo/arrow-ipc-fuzzing-test | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' ./relwithdebinfo/out/. | |||
cd ./relwithdebinfo/out/ | |||
tar -czvf fuzzer.tar.gz * | |||
stat fuzzer.tar.gz | |||
cd ../../ | |||
|
|||
export TARGET_ID=u79f6bXYgNH4NkU99iWK | |||
export FUZZIT_API_KEY=${FUZZIT_API_KEY:-ac6089a1bc2313679f2d99bb80553162c380676bff3f094de826b16229e28184a8084b86f52c95112bde6b3dbb07b9b7} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is also no longer necessary. go to https://app.fuzzit.dev/orgs/apache-arrow/settings and copy the new API Key to crossbow environment variables (I don't have access to this)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But we'd like the docker-compose setup to be runnable from a local machine, I think.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so there are two workflows fuzzing and regression.
fuzzing usually should only run from the CI when you push new code to master as this update the fuzzer on Fuzzit servers.
Regression is currently not enabled as far as I can see in this project. to enable regression you need to run the same ./fuzzit create job ....
but with --type local-regression
. this you can run from local machine as well and you don't need an api key for that at all.
To setup the regression in the CI you want to run it on every pull-request or even every commit. the fuzzing workflow should be called only on new pushed to master. I'm not sure how to do it with crossbow but I guess it shouldn't be too complicated.
(Hope it wasn't too confusing:))
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kszucs How would we create an environment variable in crossbow?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it would be better to have a separate docker-compose entries for the two fuzzit jobs.
fuzzit:
image: arrow:fuzzit
build:
context: .
dockerfile: dev/fuzzit/Dockerfile
environment:
CI_ARROW_SHA: ${CI_ARROW_SHA}
CI_ARROW_BRANCH: ${CI_ARROW_BRANCH}
volumes: *ubuntu-volumes
fuzzit-regression:
image: arrow:fuzzit
build:
context: .
dockerfile: dev/fuzzit/Dockerfile
environment:
CI_ARROW_SHA: ${CI_ARROW_SHA}
CI_ARROW_BRANCH: ${CI_ARROW_BRANCH}
# arbitrary env variables
volumes: *ubuntu-volumes
Then we can run docker-compose run fuzzit
and docker-compose run fuzzit-regression
locally. After that we can setup specific crossbow tasks to run either one or both of them.
@yevgenypats I have failed jobs with no logs at https://app.fuzzit.dev/orgs/apache-arrow/targets/arrow-ipc-fuzzing. For example https://app.fuzzit.dev/orgs/apache-arrow/targets/arrow-ipc-fuzzing/93zO2yTOpXN1VMyB4IAk |
Also, local regression job doesn't seem to work from a Docker container:
|
Also make it faster (we don't need Gandiva here).
1306f15
to
2628a74
Compare
@pitrou can you retry now, you hit a bug that I already fixed but look like the fix did not propagate to your account, should work now. Regarding regression - Yes because regression spawns a docker so it will have a reproducible environment. If you want to run it from docker you need to mount the docker socket like here for example https://github.com/envoyproxy/envoy/pull/7509/files#diff-1dea4de506864476f95ae5a444472fe1R26 I created a fuzzing job and look like it works now https://app.fuzzit.dev/orgs/apache-arrow/targets/arrow-ipc-fuzzing/oRj7teBuJbxHAQhVPMNe |
@ursabot crossbow submit docker-cpp-fuzzit |
AMD64 Conda Crossbow Submit (#64665) builder has been succeeded. Revision: 2628a74 Submitted crossbow builds: ursa-labs/crossbow @ ursabot-216
|
The script uses "latest", so it shouldn't need an update? |
Ah cool. Yes that's right.
…On Mon, Sep 23, 2019, 1:30 PM Antoine Pitrou ***@***.***> wrote:
The script uses "latest", so it shouldn't need an update?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5407?email_source=notifications&email_token=AD52CDWBIZHOM6MYP7JQO2TQLD4M7A5CNFSM4IXQ2O62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7LUOPY#issuecomment-534202175>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AD52CDRJ6IXTEKCXX5UERJ3QLD4M7ANCNFSM4IXQ2O6Q>
.
|
@kszucs Do you think this is ok to merge? |
@kszucs Ping. |
Seems so, reviewing. |
R build failure is unrelated. We'll be able to set the required environment variables in the crossbow template file using |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
We'll need a follow-up PR to add the crossbow tasks. |
Also make it faster (we don't need Gandiva here). Closes #5407 from pitrou/ARROW-6581-fix-fuzzit-job and squashes the following commits: 2628a74 <Antoine Pitrou> ARROW-6581: Fix fuzzit job submission Authored-by: Antoine Pitrou <antoine@python.org> Signed-off-by: Krisztián Szűcs <szucs.krisztian@gmail.com>
Also make it faster (we don't need Gandiva here).