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

Adds libyaml based extension for PyYAML wheel #246

Merged
merged 2 commits into from Apr 14, 2021

Conversation

kushaldas
Copy link
Contributor

@kushaldas kushaldas commented Apr 13, 2021

I did a rebuild of the PyYAML-5.4.1 wheel, which now contains the cython extension. This is what we are seeing in the CI as libyaml-dev is present in the system.j

The commit also adds libyaml-0-2 to the dependency for securedrop-proxy package.

Related to #241

How to test?

  • ./scripts/install-deps
  • ./scripts/build-sync-wheels --clobber -p ../securedrop-proxy

This should generate the same wheel (with the same sha256sum).

After this one can build a debian package for securedrop-proxy and try to install it in a Debian Buster vm/container to verify that it installs.

Also adds libyaml to the dependency for securedrop-proxy package.
@kushaldas
Copy link
Contributor Author

Ouch, missed steps, adding another commit.

@eloquence eloquence added this to Ready for Review in SecureDrop Team Board Apr 13, 2021
@conorsch conorsch force-pushed the have_extension_based_yaml branch 4 times, most recently from 3ddb9f4 to 3c53f5f Compare April 13, 2021 23:49
@conorsch
Copy link
Contributor

CI is passing here, with temporary commit. Sharing temporary commit below, in case it's useful for later reference. I'm going to proceed with merging freedomofpress/securedrop-proxy#87, then dropping the temp commit and performing final review here.

contents of the temp commit for later reference
diff --git a/.circleci/config.yml b/.circleci/config.yml
index e6aa2d7..ab181bb 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -83,6 +83,7 @@ common-steps:
       command: |
         mkdir ~/packaging && cd ~/packaging
         git clone https://github.com/freedomofpress/securedrop-proxy.git
+        git -C securedrop-proxy checkout update_pyyaml_wheel
         export PKG_NAME="securedrop-proxy"
         # Enable access to this env var in subsequent run steps
         echo $PKG_NAME > ~/packaging/sd_package_name
diff --git a/scripts/build-sync-wheels b/scripts/build-sync-wheels
index 755cc9e..cdf40d5 100755
--- a/scripts/build-sync-wheels
+++ b/scripts/build-sync-wheels
@@ -49,6 +49,8 @@ def main():
         git_clone_directory = tempfile.mkdtemp(prefix=os.path.basename(args.p))
         cmd = f"git clone {args.p} {git_clone_directory}".split()
         subprocess.check_call(cmd)
+        if "securedrop-proxy" in args.p:
+            subprocess.check_call(f"git -C {git_clone_directory} checkout update_pyyaml_wheel".split())
         args.p = git_clone_directory
     else:
         git_clone_directory = ""
diff --git a/tests/test_reproducible_debian_packages.py b/tests/test_reproducible_debian_packages.py
index 7b4360e..60e83a0 100644
--- a/tests/test_reproducible_debian_packages.py
+++ b/tests/test_reproducible_debian_packages.py
@@ -6,7 +6,7 @@ import os
 PACKAGE_BUILD_TARGETS = {
     "securedrop-client": "main",
     "securedrop-log": "main",
-    "securedrop-proxy": "main",
+    "securedrop-proxy": "update_pyyaml_wheel",
     "securedrop-export": "main",
 }

@conorsch conorsch self-requested a review April 14, 2021 00:51
Copy link
Contributor

@conorsch conorsch left a comment

Choose a reason for hiding this comment

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

I'm seeing the same wheel hash locally as what's being built in CI. Approving, now that freedomofpress/securedrop-proxy#87 is merged. Optimistic this will unblock work in #243

@conorsch conorsch merged commit e8f17e0 into main Apr 14, 2021
SecureDrop Team Board automation moved this from Ready for Review to Done Apr 14, 2021
@sssoleileraaa sssoleileraaa deleted the have_extension_based_yaml branch September 13, 2021 23:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

2 participants