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

jafar: merge with github.com/ooni/probe-engine #356

Closed
bassosimone opened this issue Feb 21, 2020 · 2 comments
Closed

jafar: merge with github.com/ooni/probe-engine #356

bassosimone opened this issue Feb 21, 2020 · 2 comments
Assignees
Labels
interrupt Task not planned during planning ooni/jafar Issues related to github.com/ooni/jafar ooni/probe-engine Issues related to github.com/ooni/probe-engine priority/low Low priority research prototype Research required technical task technical tasks e.g. deployment

Comments

@bassosimone
Copy link
Contributor

bassosimone commented Feb 21, 2020

The switch to GitHub Actions enables us to more easily run different kind of tests in parallel. We have developed a reasonably good process for performing automatic QA of the data produced by our experiment in specific error conditions at https://github.com/ooni/jafar. Because of the aforementioned possibility of running different kind of tests in parallel, I would be really happy if we could merge jafar into this repository and run this kind of checks for every commit on master and possibly also on other branches, depending on how long the whole testing procedure is going to run. This work is not small but is also an opportunity to reduce the duplication in our code-base. We currently have integration tests that run as part of go test ./... and we can probably make sure they user jafar directly.

(This occurred to me when studying #355 and there I realised how having all in the same repository, and perhaps running sometimes integration testing with Jafar also in the Android simulator, may help - #358.)

@bassosimone bassosimone added research prototype Research required priority/medium Medium priority effort/L Large effort technical task technical tasks e.g. deployment ooni/jafar Issues related to github.com/ooni/jafar labels Feb 21, 2020
@bassosimone bassosimone self-assigned this Feb 21, 2020
@bassosimone bassosimone added the ooni/probe-engine Issues related to github.com/ooni/probe-engine label Feb 21, 2020
@bassosimone bassosimone added the interrupt Task not planned during planning label Feb 21, 2020
@bassosimone bassosimone removed the interrupt Task not planned during planning label Feb 24, 2020
@bassosimone bassosimone added effort/S Small effort and removed effort/L Large effort labels Mar 2, 2020
@bassosimone bassosimone removed this from the Sprint 8 - Flounder milestone Mar 2, 2020
@bassosimone bassosimone added priority/high High priority and removed priority/medium Medium priority labels Mar 16, 2020
@bassosimone bassosimone added priority/low Low priority and removed priority/high High priority labels Jul 2, 2020
@bassosimone bassosimone added this to the Sprint 18 - Colomber milestone Jul 22, 2020
@bassosimone bassosimone added the interrupt Task not planned during planning label Jul 22, 2020
bassosimone added a commit to ooni/jafar that referenced this issue Jul 22, 2020
We were still using the deprecated github.com/ooni/netx. Let us
instead use github.com/ooni/probe-engine/netx.

Part of ooni/probe-engine#356. We will
start off by removing the old netx dependency, which we don't need
and then we can follow suite by merging into probe-engine.
bassosimone added a commit to ooni/jafar that referenced this issue Jul 22, 2020
We were still using the deprecated github.com/ooni/netx. Let us
instead use github.com/ooni/probe-engine/netx.

Part of ooni/probe-engine#356. We will
start off by removing the old netx dependency, which we don't need
and then we can follow suite by merging into probe-engine.
bassosimone added a commit that referenced this issue Jul 23, 2020
This vendors code from https://github.com/ooni/jafar/tree/0fe9a66fb6f0f064551e39060ffc9e3934eb0ba2.

For now I am just vendoring the source code and changing the imports
such that we import from the right places.

It remains to see how much is the coverage and whether to merge
into this repository the remaining scripts of jafar.

Part of #356
@bassosimone bassosimone removed the effort/S Small effort label Jul 23, 2020
bassosimone added a commit that referenced this issue Jul 23, 2020
* cmd: add jafar to the codebase

This vendors code from https://github.com/ooni/jafar/tree/0fe9a66fb6f0f064551e39060ffc9e3934eb0ba2.

For now I am just vendoring the source code and changing the imports
such that we import from the right places.

It remains to see how much is the coverage and whether to merge
into this repository the remaining scripts of jafar.

Part of #356

* Skip tests that require root

* Also remove failing tests for iptables

* Revert "Also remove failing tests for iptables"

This reverts commit 6c41c9d.

* Reinstate iptables tests and run iptables using sudo

* try and understand error

* Revert "Skip tests that require root"

This reverts commit 9695316 because we
should now be good since iptables calls sudo.

* hopefully fix the failing iptables test
@bassosimone
Copy link
Contributor Author

We also worked on #824 as part of this issue.

bassosimone added a commit that referenced this issue Jul 23, 2020
This is part of #356.

I have only lightly edited the README.md file to reflect the fact that
this is a subdirectory rather than a standalone project.
bassosimone added a commit that referenced this issue Jul 23, 2020
This is part of #356.

I have only lightly edited the README.md file to reflect the fact that
this is a subdirectory rather than a standalone project.
bassosimone added a commit that referenced this issue Jul 23, 2020
bassosimone added a commit that referenced this issue Jul 23, 2020
bassosimone added a commit that referenced this issue Jul 23, 2020
Sometimes a single telegram DC fails. So, we need to figure out a more
robust way of checking individual results. Until that point limit ourselves
to just checking top-level keys. This means we can significantly reduce
the timeout between each run, which was bumped in the hope that it could
help to reduce the frequency of flaky DC results.

Part of #356
bassosimone added a commit that referenced this issue Jul 23, 2020
* .github/workflows: integrate Jafar QA checks

Part of #356

* fix(telegram): make sure tcp blocking is computed correctly

Closes #827

Part of #356

* QA/telegram/telegram.py: increase robustness to flaky results

Sometimes a single telegram DC fails. So, we need to figure out a more
robust way of checking individual results. Until that point limit ourselves
to just checking top-level keys. This means we can significantly reduce
the timeout between each run, which was bumped in the hope that it could
help to reduce the frequency of flaky DC results.

Part of #356
@bassosimone
Copy link
Contributor Author

This is now done

bassosimone added a commit to ooni/jafar that referenced this issue Jul 23, 2020
bassosimone added a commit that referenced this issue Jul 23, 2020
@bassosimone bassosimone changed the title jafar: merge with github.com/ooni/probe-engine? jafar: merge with github.com/ooni/probe-engine Jul 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
interrupt Task not planned during planning ooni/jafar Issues related to github.com/ooni/jafar ooni/probe-engine Issues related to github.com/ooni/probe-engine priority/low Low priority research prototype Research required technical task technical tasks e.g. deployment
Projects
None yet
Development

No branches or pull requests

1 participant