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

Create zip in deb building script #6600

Merged
merged 3 commits into from
Sep 14, 2020
Merged

Create zip in deb building script #6600

merged 3 commits into from
Sep 14, 2020

Conversation

darkdh
Copy link
Member

@darkdh darkdh commented Sep 9, 2020

Resolves brave/brave-browser#11504

brave-bin AUR package relies on zip to generate the package
https://aur.archlinux.org/cgit/aur.git/commit/?h=brave-bin&id=e70061fb7fb30f7a4bc35e108df96be404ec0a62
And we only contain libEGL.so and libGLESv2.so for linux installer(deb/rpm)
in chrome/installer/linux/BUILD.gn

This is the preview of what will be contained in zip

Archive:  brave-browser-nightly-1.16.8-linux-amd64.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
   460496  2020-09-10 14:16   brave_100_percent.pak
    14394  2020-09-10 14:16   product_logo_128_nightly.png
  2025568  2020-09-10 14:16   crashpad_handler
        0  2020-09-10 14:16   resources/
        0  2020-09-10 14:16   resources/brave_extension/
        *  2020-09-08 11:16   resources/brave_extension/_locales/*
        0  2020-09-10 14:16   resources/brave_rewards/
        *  2020-09-08 11:16   resources/brave_rewards/_locales/*
    37394  2020-09-10 14:16   xdg-mime
  1464271  2020-09-10 14:16   chrome_200_percent.pak
        0  2020-09-10 14:16   swiftshader/
  2616536  2020-09-10 14:16   swiftshader/libGLESv2.so
   261760  2020-09-10 14:16   swiftshader/libEGL.so
        *  2020-09-10 14:16   locales/*
      576  2020-09-10 14:16   default-app-block
  9265904  2020-09-10 14:16   libGLESv2.so
179127032  2020-09-10 14:16   brave
  6073187  2020-09-10 14:16   resources.pak
     1832  2020-09-08 05:19   brave-browser
   171473  2020-09-10 14:16   v8_context_snapshot.bin
    16726  2020-09-10 14:16   LICENSE
   835781  2020-09-10 14:16   chrome_100_percent.pak
        0  2020-09-08 11:17   WidevineCdm/
      473  2020-09-01 18:29   WidevineCdm/LICENSE
        0  2020-09-08 11:17   WidevineCdm/_platform_specific/
        0  2020-09-08 11:17   WidevineCdm/_platform_specific/linux_x64/
        0  2019-11-26 17:01   WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so
        2  2019-11-26 17:01   WidevineCdm/manifest.json
        0  2020-09-10 14:16   cron/
    15244  2020-09-10 14:16   cron/brave-browser-nightly
        0  2020-09-10 14:16   MEIPreload/
     7022  2020-09-10 14:16   MEIPreload/preloaded_data.pb
      228  2020-09-10 14:16   MEIPreload/manifest.json
   237152  2020-09-10 14:16   libEGL.so
     1832  2020-09-10 14:16   brave-browser-nightly
   228816  2020-09-10 14:16   chrome-sandbox
    33273  2020-09-10 14:16   xdg-settings
 10518160  2020-09-10 14:16   icudtl.dat
 10700764  2020-09-10 14:16   brave_resources.pak
   476590  2020-09-10 14:16   brave_200_percent.pak
---------                     -------
247435589                     305 files

Screen Shot 2020-09-10 at 14 26 14

Submitter Checklist:

Test Plan:

  1. Grab the package (*-linux-x64.zip) on release page
  2. Unzip it and make sure it has libEGL.so and libGLESv2.so
  3. Launch brave from extracted folder
  4. Go to brave://gpu
  5. WebGL and OpenGL should not be disabled

Reviewer Checklist:

  • New files have MPL-2.0 license header.
  • Request a security/privacy review as needed.
  • Adequate test coverage exists to prevent regressions
  • Verify test plan is specified in PR before merging to source

After-merge Checklist:

  • The associated issue milestone is set to the smallest version that the
    changes has landed on.
  • All relevant documentation has been updated.

@darkdh darkdh self-assigned this Sep 9, 2020
Copy link
Member

@bsclifton bsclifton left a comment

Choose a reason for hiding this comment

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

Grabbed zip from PR builder (see https://bravesoftware.slack.com/archives/CMH8DU4TF/p1599619980074900 on Slack) and verified both libEGL.so and libGLESv2.so are included 😄 Nice work!

@bsclifton bsclifton added this to the 1.16.x - Nightly milestone Sep 9, 2020
@bsclifton
Copy link
Member

@bridiver if this looks good to you, we can merge and I can help create uplifts

Copy link
Collaborator

@antonok-edm antonok-edm left a comment

Choose a reason for hiding this comment

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

By my count, this is the full list of files files from the deb release that are not also included in the zip release. Are any of the others important? I suspect we probably want to at least be including the swiftshader directory as well.

./usr/share/menu/brave-browser.menu
./usr/share/gnome-control-center/default-apps/brave-browser.xml
./usr/share/doc/brave-browser/changelog.gz
./usr/share/appdata/brave-browser.appdata.xml
./usr/share/applications/brave-browser.desktop
./usr/share/man/man1/brave-browser-stable.1.gz
./opt/brave.com/brave/product_logo_32.xpm
./opt/brave.com/brave/product_logo_16.png
./opt/brave.com/brave/xdg-mime
./opt/brave.com/brave/product_logo_32.png
./opt/brave.com/brave/product_logo_256.png
./opt/brave.com/brave/swiftshader/libGLESv2.so
./opt/brave.com/brave/swiftshader/libEGL.so
./opt/brave.com/brave/WidevineCdm/LICENSE               # there is a file called LICENSE in the zip, not sure if it's the same though
./opt/brave.com/brave/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so
./opt/brave.com/brave/WidevineCdm/manifest.json
./opt/brave.com/brave/MEIPreload/preloaded_data.pb
./opt/brave.com/brave/MEIPreload/manifest.json
./opt/brave.com/brave/product_logo_64.png
./opt/brave.com/brave/crashpad_handler
./opt/brave.com/brave/product_logo_48.png
./opt/brave.com/brave/xdg-settings
./opt/brave.com/brave/default-app-block
./opt/brave.com/brave/libGLESv2.so                      # included by this PR
./opt/brave.com/brave/chrome-sandbox
./opt/brave.com/brave/libEGL.so                         # included by this PR
./opt/brave.com/brave/cron/brave-browser
./opt/brave.com/brave/brave-browser
./opt/brave.com/brave/product_logo_128.png
./opt/brave.com/brave/product_logo_24.png
./usr/bin/brave-browser-stable -> /opt/brave.com/brave/brave-browser
./usr/share/man/man1/brave-browser.1.gz -> brave-browser-stable.1.gz
./etc/cron.daily/brave-browser -> /opt/brave.com/brave/cron/brave-browser

@darkdh
Copy link
Member Author

darkdh commented Sep 10, 2020

zip file will no longer be in dist folder, now it will reside in the same level as deb/rpm packages.
@bsclifton what process should we change so that we can automatically grab it and upload to release page?

fi
log_cmd fakeroot dpkg-deb ${COMPRESSION_OPTS} -b "${STAGEDIR}" .
verify_package "$DEPENDS"
+ cd "${STAGEDIR}/${INSTALLDIR}/"
Copy link
Collaborator

Choose a reason for hiding this comment

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

use ; or && to put this all on one line

Copy link
Member Author

Choose a reason for hiding this comment

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

fixed

@darkdh darkdh force-pushed the create_dist_zip branch 3 times, most recently from ed8e5b0 to 1c396d6 Compare September 10, 2020 21:21
@darkdh darkdh changed the title Add missing binaries to packaging zip Create zip in deb building script Sep 10, 2020
@bsclifton
Copy link
Member

zip file will no longer be in dist folder, now it will reside in the same level as deb/rpm packages.
@bsclifton what process should we change so that we can automatically grab it and upload to release page?

Addressed here 😄
https://github.com/brave/devops/pull/3620

@darkdh
Copy link
Member Author

darkdh commented Sep 11, 2020

Known intermittent error of test-install:

18:23:27  powershell.exe : Start-Process : This command cannot be run due to the error: The system cannot find the file specified.
18:23:27  At C:\_zip@tmp\durable-c60fdcf6\powershellWrapper.ps1:3 char:1
18:23:27  + & powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -Comm ...
18:23:27  + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
18:23:27      + CategoryInfo          : NotSpecified: (Start-Process :...file specified.:String) [], RemoteException
18:23:27      + FullyQualifiedErrorId : NativeCommandError
18:23:27   
18:23:27  At C:\_zip@tmp\durable-c60fdcf6\powershellScript.ps1:10 char:17
18:23:27  + ...             Start-Process "C:\Users\Administrator\AppData\Local\Brave ...
18:23:27  +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
18:23:27      + CategoryInfo          : InvalidOperation: (:) [Start-Process], InvalidOperationException
18:23:27      + FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand

https://ci.brave.com/job/pr-brave-browser-create_dist_zip-windows/9/execution/node/241/log/

@bsclifton
Copy link
Member

@mihaiplesa mihaiplesa added CI/skip-android Do not run CI builds for Android CI/skip-ios Do not run CI builds for iOS CI/skip-macos-x64 Do not run CI builds for macOS x64 CI/skip-windows labels Sep 11, 2020
@mihaiplesa
Copy link
Collaborator

Will this be uplifted all the way?

@mihaiplesa mihaiplesa removed CI/skip-android Do not run CI builds for Android CI/skip-ios Do not run CI builds for iOS CI/skip-macos-x64 Do not run CI builds for macOS x64 labels Sep 11, 2020
@mihaiplesa mihaiplesa added CI/skip Do not run CI builds (except noplatform) and removed CI/skip-windows labels Sep 11, 2020
@darkdh
Copy link
Member Author

darkdh commented Sep 11, 2020

ideally, this PR will be uplifted to release channel

@darkdh darkdh removed the CI/skip Do not run CI builds (except noplatform) label Sep 12, 2020
@darkdh darkdh merged commit ad5c797 into master Sep 14, 2020
@darkdh darkdh deleted the create_dist_zip branch September 14, 2020 18:45
@bsclifton
Copy link
Member

bsclifton commented Sep 14, 2020

@darkdh I think we can uplift this to 1.15 also 👍 If there is a conflict because of C85/C86, we can add it to #6195 (as what we need to uplift along with C86)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Desktop] WebGL & OpenGL has been disabled in stable 1.13.82 and beta 1.14.65
6 participants