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

[build] Create Linux aarch64 package #69165

Merged
merged 11 commits into from
Jul 10, 2020

Conversation

tylersmalley
Copy link
Contributor

@tylersmalley tylersmalley commented Jun 15, 2020

  • Updates Linux Chromium builds to accept architecture argument (defaults to x64) for arm64 support.
    • Example: python ~/chromium/build_chromium/build.py 312d84c8ce62810976feda0d3457108a6dfff9e6 arm64
  • Updates all Chromium builds to include architecture in filename.
    • chromium-312d84c-linux_arm64.zip (new)
    • chromium-312d84c-linux.zip > chromium-312d84c-linux_x64.zip
  • Moves Chromium install from data directory to x-pack/plugins/reporting/chromium
  • Moves Chromium download cache from x-pack/plugins/reporting/.chromium to .chromium
  • Installs Chromium during build (closes Distributions should include an extracted Chromium #53664)
  • Updates build to be architecture aware (x64 and aarch64)
  • Removed Chromium debug logs, they were not helpful and can not be written inside the Kibana root. If we were to keep them, we would need to write to logging.dist.

Testing:

  • Google Cloud Storage Upload Report (example): Includes targets for all platforms
  • AWS EC2 is currently the only available environment with ARM available
  • Be sure to test reporting (start trial, add sample data, open dashboard, create report)

@tylersmalley tylersmalley force-pushed the build-aarch-linux branch 2 times, most recently from c3a9649 to 4963f9b Compare June 23, 2020 14:48
@tylersmalley tylersmalley force-pushed the build-aarch-linux branch 5 times, most recently from 7bd8839 to 5e2e834 Compare July 2, 2020 19:53
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
@tylersmalley tylersmalley added (Deprecated) Feature:Reporting Use Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead release_note:enhancement Team:Operations Team label for Operations Team Team:Reporting Services v7.9.0 v8.0.0 labels Jul 3, 2020
@tylersmalley tylersmalley marked this pull request as ready for review July 3, 2020 02:48
@tylersmalley tylersmalley requested a review from a team as a code owner July 3, 2020 02:48
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-operations (Team:Operations)

@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-reporting-services (Team:Reporting Services)

src/dev/build/lib/config.js Outdated Show resolved Hide resolved
src/dev/build/lib/platform.js Show resolved Hide resolved
@@ -25,5 +25,6 @@ yarn run grunt functionalTests:ensureAllTestsInCiGroup;
# Do not build kibana for code coverage run
if [[ -z "$CODE_COVERAGE" ]] ; then
echo " -> building and extracting OSS Kibana distributable for use in functional tests"
node scripts/build --debug --oss
# TEMP: build all platforms for PR testing
node scripts/build --debug --oss --all-platforms
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added for testing

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
Copy link
Contributor

@spalger spalger left a comment

Choose a reason for hiding this comment

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

Build changes LGTM

@jbudz
Copy link
Member

jbudz commented Jul 6, 2020

can we chown kibana:kibana in post_install.sh? pre-extracting will cause root:root ownership now that the server isn't doing it

@tylersmalley
Copy link
Contributor Author

Chatted with @jbudz - we're going to leave the permissions as it since it maintains the existing permissions. We can address permissions in a separate PR if we decide the change them.

Copy link
Contributor

@joelgriffith joelgriffith left a comment

Choose a reason for hiding this comment

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

Changes LGTM

Tyler Smalley added 3 commits July 9, 2020 09:26
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
@tsullivan
Copy link
Member

Removed Chromium debug logs, they were not helpful and can not be written inside the Kibana root. If we were to keep them, we would need to write to logging.dist.

I second this and also want to say that the logs we are more interested in are the stderr and stdout from the Chromium process. We don't have an easy way to do that right now, but @joelgriffith is working on it 😄

Copy link
Member

@tsullivan tsullivan left a comment

Choose a reason for hiding this comment

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

I had a small nit about using fromRoot in the Reporting "paths" file, otherwise the Reporting changes LGTM!

Tyler Smalley added 2 commits July 9, 2020 16:22
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
Copy link
Member

@tsullivan tsullivan left a comment

Choose a reason for hiding this comment

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

latest changes LGTM!

@kibanamachine
Copy link
Contributor

💚 Build Succeeded

Build metrics

✅ unchanged

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@tylersmalley tylersmalley merged commit afe785b into elastic:master Jul 10, 2020
tylersmalley pushed a commit to tylersmalley/kibana that referenced this pull request Jul 10, 2020
- Updates Linux Chromium builds to accept architecture argument (defaults to x64) for arm64 support.
  - Example: `python ~/chromium/build_chromium/build.py 312d84c8ce62810976feda0d3457108a6dfff9e6 arm64`
- Updates all Chromium builds to include architecture in filename.
  - `chromium-312d84c-linux_arm64.zip` _(new)_
  - `chromium-312d84c-linux.zip` > `chromium-312d84c-linux_x64.zip`
- Moves Chromium install from data directory to `x-pack/plugins/reporting/chromium`
- Moves Chromium download cache from `x-pack/plugins/reporting/.chromium` to `.chromium`
- Installs Chromium during build (closes elastic#53664)
- Updates build to be architecture aware (x64 and aarch64)
- Removed Chromium debug logs, they were not helpful and can not be written inside the Kibana root. If we were to keep them, we would need to write to `logging.dist`.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
# Conflicts:
#	.ci/packer_cache_for_branch.sh
#	x-pack/plugins/reporting/server/browsers/chromium/paths.ts
jloleysens added a commit to jloleysens/kibana that referenced this pull request Jul 10, 2020
…11y-overlay

* 'master' of github.com:elastic/kibana: (33 commits)
  address index templates feedback (elastic#71353)
  Upgrade EUI to v26.3.1 (elastic#70243)
  [build] Creates Linux aarch64 archive (elastic#69165)
  [SIEM][Detection Engine] Fixes skipped tests (elastic#71347)
  [SIEM][Detection Engine][Lists] Adds read_privileges route for lists and list items
  [kbn/optimizer] implement "requiredBundles" property of KP plugins (elastic#70911)
  [Security Solution][Exceptions] - Exceptions modal pt 2 (elastic#70886)
  [ML] DF Analytics:  stop status polling when job stopped (elastic#71159)
  [SIEM][CASE] IBM Resilient Connector (elastic#66385)
  jenkins_xpack_saved_objects_field_metrics.sh expects to be run from the KIBANA_DIR in CI
  Deduplication of entries and items before sending to endpoint (elastic#71297)
  [services/remote/webdriver] fix eslint error (elastic#71346)
  send slack notifications on visual baseline failures
  fix visual regression job (elastic#70999)
  [Ingest Manager] Add schema to usageCollector. (elastic#71219)
  [ftr] use typed chromeOptions object, adding TEST_BROWSER_BINARY_PATH (elastic#71279)
  [Ingest Manager] Fix limited packages incorrect response (elastic#71292)
  Support multiple features declaring same properties (elastic#71106)
  [Security_Solution][Resolver]Add beta badge to Resolver panel (elastic#71183)
  [DOCS] Clarify trial subscription levels (elastic#70636)
  ...
gmmorris added a commit to gmmorris/kibana that referenced this pull request Jul 13, 2020
* master: (78 commits)
  Bump lodash package version (elastic#71392)
  refactor: 💡 use allow-list in AppArch codebase (elastic#71400)
  improve bugfix 7198 test stability (elastic#71250)
  [Security Solution][Ingest Manager][Endpoint] Optional ingest manager (elastic#71198)
  [Metrics UI] Round metric threshold time buckets to nearest unit (elastic#71172)
  [Security Solution][Endpoint] Policy creation callback fixes + Improved error handling in user manifest loop (elastic#71269)
  [Security Solution] Allow to configure Event Renderers settings (elastic#69693)
  Fix a11y keyboard overlay (elastic#71214)
  [APM] UI text updates (elastic#71333)
  [Logs UI] Limit `extendDatemath` to valid ranges (elastic#71113)
  [SIEM] fix tooltip of notes (elastic#71342)
  address index templates feedback (elastic#71353)
  Upgrade EUI to v26.3.1 (elastic#70243)
  [build] Creates Linux aarch64 archive (elastic#69165)
  [SIEM][Detection Engine] Fixes skipped tests (elastic#71347)
  [SIEM][Detection Engine][Lists] Adds read_privileges route for lists and list items
  [kbn/optimizer] implement "requiredBundles" property of KP plugins (elastic#70911)
  [Security Solution][Exceptions] - Exceptions modal pt 2 (elastic#70886)
  [ML] DF Analytics:  stop status polling when job stopped (elastic#71159)
  [SIEM][CASE] IBM Resilient Connector (elastic#66385)
  ...
tylersmalley pushed a commit that referenced this pull request Jul 13, 2020
- Updates Linux Chromium builds to accept architecture argument (defaults to x64) for arm64 support.
  - Example: `python ~/chromium/build_chromium/build.py 312d84c8ce62810976feda0d3457108a6dfff9e6 arm64`
- Updates all Chromium builds to include architecture in filename.
  - `chromium-312d84c-linux_arm64.zip` _(new)_
  - `chromium-312d84c-linux.zip` > `chromium-312d84c-linux_x64.zip`
- Moves Chromium install from data directory to `x-pack/plugins/reporting/chromium`
- Moves Chromium download cache from `x-pack/plugins/reporting/.chromium` to `.chromium`
- Installs Chromium during build (closes #53664)
- Updates build to be architecture aware (x64 and aarch64)
- Removed Chromium debug logs, they were not helpful and can not be written inside the Kibana root. If we were to keep them, we would need to write to `logging.dist`.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
# Conflicts:
#	.ci/packer_cache_for_branch.sh
#	x-pack/plugins/reporting/server/browsers/chromium/paths.ts

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
tylersmalley pushed a commit to tylersmalley/kibana that referenced this pull request Jul 14, 2020
This was removed in elastic#69165 without
realizing it was used by the packer cache. I renamed it to be more
inline with what it actually does.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
tylersmalley pushed a commit that referenced this pull request Jul 15, 2020
This was removed in #69165 without
realizing it was used by the packer cache. I renamed it to be more
inline with what it actually does.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
tylersmalley pushed a commit to tylersmalley/kibana that referenced this pull request Jul 15, 2020
This was removed in elastic#69165 without
realizing it was used by the packer cache. I renamed it to be more
inline with what it actually does.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
# Conflicts:
#	.ci/packer_cache_for_branch.sh
tylersmalley pushed a commit that referenced this pull request Jul 15, 2020
This was removed in #69165 without
realizing it was used by the packer cache. I renamed it to be more
inline with what it actually does.

Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
# Conflicts:
#	.ci/packer_cache_for_branch.sh
@cartreran
Copy link

Why isnt this avalaibe on the main page? I cant seem to find a downlaod

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
(Deprecated) Feature:Reporting Use Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead Feature:Build Packaging release_note:enhancement Team:Operations Team label for Operations Team v7.9.0 v8.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Distributions should include an extracted Chromium
8 participants