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

Release 3.16 check-list #2130

Closed
26 of 27 tasks
bassosimone opened this issue Jun 7, 2022 · 1 comment
Closed
26 of 27 tasks

Release 3.16 check-list #2130

bassosimone opened this issue Jun 7, 2022 · 1 comment
Assignees
Labels
priority/medium technical task technical tasks e.g. deployment

Comments

@bassosimone
Copy link
Contributor

bassosimone commented Jun 7, 2022

  • psiphon: run ./update.bash
  • oocrypto: merge with upstream if needed
  • oohttp: merge with upstream if needed
  • ooni/go-libtor: update
  • probe-cli: sync stunreachability targets with snowflake (see ./internal/stuninput)
  • probe-cli: update the version of go used by github actions
  • probe-cli: take a look at go report card
  • probe-cli: address any outstanding TODO in the diff since last release (or create an issue for it)
  • probe-cli: ensure ./mk is using latest version of several tools
  • probe-cli: ensure github.com/bassosimone/monorepo is using the latest version of several tools
  • probe-cli: update dependencies with go get -u -v -d ./...
  • probe-cli: ensure no dependency bumped its major version number
  • probe-cli: update user-agent at internal/model/http.go
  • probe-cli: update internal/version/version.go
  • probe-cli: update github.com/ooni/probe-assets dependency
  • probe-cli: update bundled certs (using go generate ./...)
  • probe-cli: make sure all workflows are green
  • probe-cli: check warnings emitted by gosec runs
  • probe-cli: go test -race -count 1 ./... must pass locally
  • probe-cli: tag a new version
  • probe-cli: update internal/version/version.go to be alpha
  • probe-cli: create release at GitHub
  • probe-android: pin to latest oonimkall
  • probe-ios: pin to latest oonimkall
  • debian: publish packages
  • probe-desktop: pin to latest cli
  • probe: create issue for next routine release
@bassosimone bassosimone self-assigned this Jun 7, 2022
@bassosimone bassosimone mentioned this issue Jun 7, 2022
25 tasks
@bassosimone bassosimone added the technical task technical tasks e.g. deployment label Jun 17, 2022
bassosimone added a commit to ooni/probe-cli that referenced this issue Aug 29, 2022
The issue here is that the repository is owned by the user who
runs the command and the container runs as root.

Part of ooni/probe#2130
bassosimone added a commit to ooni/probe-cli that referenced this issue Aug 29, 2022
Rather than hardcoding the NDK version inside a script, encode it
as a file in the filesystem, which is easier to share.

Call ./MOBILE/android/ensure in the github action so we fail if
we cannot install the desired Android NDK version.

Make sure we use the desired NDK by setting environment variables.

Use `-androidabi 21`, which:

1. is what rclone did: rclone/rclone@8390ba4

2. is the minimum ABI used by probe-android: https://github.com/ooni/probe-android/blob/994651be52ff75ee3a00dba499ec7c7b40ab25c1/app/build.gradle#L10

Part of ooni/probe#2130
bassosimone added a commit to ooni/probe-cli that referenced this issue Aug 29, 2022
Rather than hardcoding the NDK version inside a script, encode it
as a file in the filesystem, which is easier to share.

Make sure we use the desired NDK by setting environment variables.

Use `-androidabi 21`, which:

1. is what rclone did: rclone/rclone@8390ba4

2. is the minimum ABI used by probe-android: https://github.com/ooni/probe-android/blob/994651be52ff75ee3a00dba499ec7c7b40ab25c1/app/build.gradle#L10

Part of ooni/probe#2130
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 4, 2022
This is part of the routine tasks before a release.

See ooni/probe#2130
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 4, 2022
This is part of the routine tasks before a release.

See ooni/probe#2130
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 4, 2022
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 4, 2022
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 4, 2022
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 4, 2022
bassosimone pushed a commit to ooni/go-libtor that referenced this issue Sep 5, 2022
* Update the linux build of tor

* Update macOS build

* Update README docs

* Bump versions of dependencies

This was done running:
```
go run build/wrap.go --nobuild --update
./build/local-linux-build.sh
```

The following libs were updated:
zlib -> 1.2.12
libevent -> 2.2.0-alpha-dev
openssl -> 1.1.1-stable
tor -> 0.4.6.12-dev

See ooni/probe#2130
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 5, 2022
This is the last dependency we needed to update according to
the ooni/probe#2130 checklist.
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 5, 2022
This is the last dependency we needed to update according to
the ooni/probe#2130 checklist.
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 7, 2022
It would be better to determine the version we should be using
automatically, and maybe we'll do that soon.

It was not documented why there was an individual YAML file
for each experiment, so I consolidated all of them.

Part of ooni/probe#2130
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 7, 2022
While working on ooni/probe#2130, and specifically on the action item related to making sure all workflows are green, I was confronted with the complexity of the QA directory.

There's plenty of cleaning up and simplifying there. The original intent was to A/B test `miniooni` and `measurement_kit` to ensure they were behaving the same. We don't have this need anymore.

Rather, it seems the QA scripts have grown large and flaky, to the point that I am always tempted to ignore them. The underlying censorship engine, jafar, has also not been developed for quite some time.

So, the first step towards improve the QA infrastructure seems to be humble and acknowledge that we cannot realistically maintain these checks using jafar as a backend for so many experiments.

Let us focus on our most important experiment, Web Connectivity, and let us keep QA checks for it.

Additionally, let us simplify and cleanup QA as much as possible, though without introducing radical changes.

The end result is a QA for Web Connectivity that seems reasonable and runs in six minutes.
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 8, 2022
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 8, 2022
bassosimone added a commit to ooni/probe-cli that referenced this issue Sep 8, 2022
bassosimone added a commit to ooni/probe-desktop that referenced this issue Sep 9, 2022
bassosimone added a commit to ooni/probe-android that referenced this issue Sep 14, 2022
bassosimone added a commit to ooni/probe-ios that referenced this issue Sep 14, 2022
@bassosimone
Copy link
Contributor Author

I'm going to close this issue. Most of the routine has been done. Should we need any further hotfix, we'll open a specific issue. 😅

bassosimone added a commit to ooni/probe-android that referenced this issue Sep 21, 2022
* chore: use ooni/probe-cli v3.16.2

See ooni/probe#2130

* chore: use probe-cli v3.16.3

* changed test library for oonimkall

Co-authored-by: Norbel Ambanumben <aanorbel@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority/medium technical task technical tasks e.g. deployment
Projects
None yet
Development

No branches or pull requests

1 participant