-
Notifications
You must be signed in to change notification settings - Fork 83
[WIP] Bazel fixes, Bazel CI, Dev Containers #1023
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
Open
abbywh
wants to merge
61
commits into
airbnb:main
Choose a base branch
from
abbywh:bazel-nflx-fixes
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 47 commits
Commits
Show all changes
61 commits
Select commit
Hold shift + click to select a range
54583b0
Get bazel tests working on Spark 3.2.
tswitzer-netflix 5cc1c5e
Whoops.
tswitzer-netflix 9032fb9
bazel setup continued
89d2e5c
Merge remote-tracking branch 'origin' into tswitzer/bazel-fixes
6ff1378
Refactor .gitignore and clean up TwoStackLiteAggregatorTest and spark…
5ec81bc
fixed test artifacts
bf74405
added circle ci support for bazel
f68f185
circleci doesn't have bazel preinstalled
81849c0
scalafmt
2590233
install directly on the machine so someone doesn't have to rebuild th…
745063c
circleci config
fb76daa
running as root :(
f7afb00
moved bazel config into env variable before repo fetching
49d1dbf
update Bazel configuration to use integer for RULES_PYTHON_ENABLE_PYSTAR
fc6ed3c
refactor CI configuration and update dependencies for consistency
4fc7804
simplified bazel setup with circleci
a7afe6a
cooment about setup
0d9d664
lets see if nonroot works
b511467
run Bazel tests as nonroot user for improved security
4e62e6c
permission issue on the setup
2abcb55
crashed circleci
30ef632
more logging, trying to get rid of segfault
ecb219f
flakey test didn't help
bac7804
test util changes for backwards compatibility
76ad6ff
refine file filtering logic in getFilePaths to exclude non-config files
caab562
Revert "refine file filtering logic in getFilePaths to exclude non-co…
6c63016
Add CircleCI configuration for optimized test performance and resourc…
7e9ea1a
fewer cores
3f5735e
removed job changes that seem to break tests
ef5d23a
old artifact
78714bd
dropping ram for segfault
4d6aa61
new base image
f3b8cb8
mkdir
92ea500
seperating regular and spark tests
de6a26a
reverting to stable
4e78bf8
use base executor with thrift and such preinstalled
3390fc4
Revert "use base executor with thrift and such preinstalled"
dc01256
bazel wasn't installed
16b70d8
mkdir
9c07817
really flakey with bazel
d557101
Add Ignore annotation to FetcherTest
12f69e5
Update .devcontainer/install_thrift.sh
abbywh 114d7c2
bazel cache support
a8cd09b
removing bad emojis
6f8e243
Merge branch 'bazel-nflx-fixes' of https://github.com/abbywh/chronon …
4a3b338
lets try removing context (idk circleci)
5456ca1
lets expand elsewhere
3a94142
Update .circleci/config.yml
pengyu-hou b4b6b3d
Update .circleci/config.yml
pengyu-hou 638be4f
explicit export BuildBuddyAPIKey
pengyu-hou 893da4b
fix
pengyu-hou 716fa5e
debug
pengyu-hou ff03ab7
fix
pengyu-hou 1f0f3bf
circleci suggestion
a1e5421
name must equal value
a19d34c
another debug try
24c182e
trying something new to expand outside the string
035ee45
maybe we expand in bazelrc?
a0650bd
yaml issue?
afa0df6
hopefully it is just an env var?
5b2e5bf
action env?
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| 6.4.0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,25 @@ | ||
| { | ||
| "name": "Chronon Development", | ||
| "image": "mcr.microsoft.com/devcontainers/base:ubuntu-22.04", | ||
| "features": { | ||
| "ghcr.io/devcontainers/features/java:1": { | ||
| "version": "11" | ||
| }, | ||
| "ghcr.io/devcontainers/features/python:1": { | ||
| "version": "3.10" | ||
| } | ||
| }, | ||
| "postCreateCommand": ".devcontainer/setup.sh", | ||
| "customizations": { | ||
| "vscode": { | ||
| "extensions": [ | ||
| "scalameta.metals", | ||
| "ms-python.python", | ||
| "ms-python.pylint", | ||
| "bazelbuild.vscode-bazel" | ||
| ] | ||
| } | ||
| }, | ||
| "forwardPorts": [8080, 3000], | ||
| "remoteUser": "vscode" | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| #!/bin/bash | ||
|
|
||
| set -efx | ||
|
|
||
| # Clean up any existing thrift_build directory | ||
| rm -rf thrift_build | ||
| mkdir thrift_build | ||
| pushd thrift_build | ||
|
|
||
| # Download archive and verify it matches our expected checksum. | ||
| THRIFT_HTTP_ARCHIVE=https://archive.apache.org/dist/thrift/0.13.0/thrift-0.13.0.tar.gz | ||
| THRIFT_ARCHIVE=thrift.tar.gz | ||
| THRIFT_EXPECTED_CHECKSUM_SHA256=7ad348b88033af46ce49148097afe354d513c1fca7c607b59c33ebb6064b5179 | ||
| curl "$THRIFT_HTTP_ARCHIVE" -o "$THRIFT_ARCHIVE" | ||
| THRIFT_ACTUAL_CHECKSUM_SHA256=$(sha256sum "$THRIFT_ARCHIVE" | awk '{ print $1 }') | ||
| if [ "$THRIFT_EXPECTED_CHECKSUM_SHA256" != "$THRIFT_ACTUAL_CHECKSUM_SHA256" ]; then | ||
| echo "Checksum does not match expected value" >&2 | ||
| echo " - location: $THRIFT_HTTP_ARCHIVE" >&2 | ||
| echo " - expected: $THRIFT_EXPECTED_CHECKSUM_SHA256" >&2 | ||
| echo " - obtained: $THRIFT_ACTUAL_CHECKSUM_SHA256" >&2 | ||
| exit 1 | ||
| fi | ||
|
|
||
| echo "Building Thrift from source" | ||
| # Build thrift from source. | ||
| mkdir src | ||
| tar zxvf thrift.tar.gz -C src --strip-components=1 | ||
| pushd src | ||
|
|
||
| # Install build dependencies | ||
| sudo apt update | ||
| sudo apt install -y build-essential libssl-dev pkg-config flex bison | ||
|
|
||
| # Configure and build | ||
| ./configure --without-cpp --without-java --without-python --without-py3 --without-ruby --without-haskell --without-erlang --without-perl --without-php --without-php_extension --without-c_glib --without-csharp --without-go --without-nodejs --without-lua --without-qt5 --without-dart --without-swift --without-js --without-d --without-haxe --without-cl --without-as3 --without-dotnetcore --without-netstd --without-rs | ||
| make | ||
|
|
||
| # Install | ||
| sudo make install | ||
|
|
||
| popd | ||
|
|
||
| # Verify installation | ||
| thrift -version | ||
|
|
||
| popd | ||
|
|
||
| echo "Thrift 0.13.0 installation completed successfully" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| #!/bin/bash | ||
|
|
||
| # Install Bazel 6.4.0 (required by this project) | ||
| echo "Installing Bazel 6.4.0..." | ||
|
|
||
| # Add Bazel GPG key and repository | ||
| curl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/bazel-archive-keyring.gpg > /dev/null | ||
| echo "deb [arch=amd64 signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list | ||
|
|
||
| # Update package list and install specific Bazel version | ||
| sudo apt update | ||
| sudo apt install -y bazel-6.4.0 | ||
|
|
||
| # Set up bazel-6.4.0 as the default bazel command | ||
| sudo update-alternatives --install /usr/bin/bazel bazel /usr/bin/bazel-6.4.0 100 | ||
|
|
||
| # Install Thrift compiler (0.13.0 to match project requirements) | ||
| echo "Installing Thrift 0.13.0..." | ||
| ./.devcontainer/install_thrift.sh | ||
|
|
||
| # Verify installations | ||
| echo "Verifying installations..." | ||
| bazel version | ||
| python --version | ||
| java -version | ||
|
|
||
| echo "Setup complete!" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,16 +1 @@ | ||
| directories: | ||
| # Add the directories you want added as source here | ||
| # By default, we've added your entire workspace ('.') | ||
| . | ||
|
|
||
| # Automatically includes all relevant targets under the 'directories' above | ||
| derive_targets_from_directories: true | ||
|
|
||
| targets: | ||
| # If source code isn't resolving, add additional targets that compile it here | ||
|
|
||
| additional_languages: | ||
| # Uncomment any additional languages you want supported | ||
| python | ||
| scala | ||
| java | ||
| import tools/ide_support/intellij/default_view.bazelproject |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| -Xms2G | ||
| -Xmx4G | ||
| -XX:+CMSClassUnloadingEnabled | ||
| -XX:MaxPermSize=4G |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.