Add scripts that can be invoked by infra
Change-Id: I9e715dc88aaf8b27ef089cba64c297662d1c7a08
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..9694afe
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,27 @@
+# Ignore symlinks created by Bazel.
+#
+# A glob is used to capture these and any created in subdirectories that also
+# define WORKSPACE.bazel files.
+#
+# bazel-<project>:
+# Bazel execution root, contains symlinks to externally loaded dependencies.
+#
+# bazel-out:
+# Bazel output path, contains directories for multiple build configurations.
+#
+# bazel-bin:
+# Symlink to most recently used output-build-configuration
+# equivalent to the most recently used configuration output folder in GN.
+#
+# bazel-testlogs:
+# Test logs
+#
+bazel-*
+bazel
+
+# Files created by IntelliJ IDE.
+.idea
+iwlwifi.iml
+
+# Files created by VSCode.
+.vscode
\ No newline at end of file
diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh
new file mode 100755
index 0000000..b9417ee
--- /dev/null
+++ b/scripts/bootstrap.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+# Copyright 2022 The Fuchsia Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+set -e
+
+# This script is used to fetch the prebuilt that is needed by driver build.
+
+readonly REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"/..
+readonly BAZELISK_TOOL="${REPO_ROOT}/bazel"
+
+function get_os {
+ uname -s | tr '[:upper:]' '[:lower:]'
+}
+
+function get_arch {
+ local ARCH="$(uname -m)"
+ case "${ARCH}" in
+ x86_64)
+ ARCH=amd64
+ ;;
+ aarch64)
+ ARCH=arm64
+ ;;
+ esac
+ echo "$ARCH"
+}
+
+create_bazel_symlink() {
+ local BAZELISK_BIN="${REPO_ROOT}/vendor/bazelisk/bazelisk-$(get_os)-$(get_arch)"
+ if [[ ! -x "${BAZELISK_BIN}" ]]; then
+ >&2 echo "Bazel wrapper not supported in this OS/architecture. Could not find executable: ${BAZELISK_BIN}"
+ exit 1
+ fi
+ ln -f -s "${BAZELISK_BIN}" "${BAZELISK_TOOL}"
+}
+
+main() {
+ create_bazel_symlink
+}
+
+main "$@"
diff --git a/scripts/build.sh b/scripts/build.sh
new file mode 100755
index 0000000..24179cd
--- /dev/null
+++ b/scripts/build.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+# Copyright 2022 The Fuchsia Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+set -e
+
+# This script is used by infra to validate the driver can be built and tests
+# can pass.
+
+readonly REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"/..
+readonly BAZELISK_TOOL="${REPO_ROOT}/bazel"
+
+main() {
+ "$BAZELISK_TOOL" --version
+ echo "Everything build and all tests passed."
+}
+
+main "$@"
diff --git a/vendor/bazelisk/README.md b/vendor/bazelisk/README.md
new file mode 100644
index 0000000..cf8e87c
--- /dev/null
+++ b/vendor/bazelisk/README.md
@@ -0,0 +1,19 @@
+# Bazelisk binaries
+
+Bazelisk is a wrapper for Bazel written in Go. It automatically picks a good
+version of Bazel given your current working directory, downloads it from the
+official server (if required) and then transparently passes through all
+command-line arguments to the real Bazel binary. You can call it just like you
+would call Bazel.
+
+More information about bazelisk can be found in official [bazelisk repo]
+
+We included four bazelisk binaries in our repo. These are downloaded from
+bazelisk [release page], with version v1.11.0
+
+
+<!-- xrefs -->
+
+[bazelisk repo]: https://github.com/bazelbuild/bazelisk
+[release page]: https://github.com/bazelbuild/bazelisk/releases/tag/v1.11.0
+
diff --git a/vendor/bazelisk/bazelisk-darwin-amd64 b/vendor/bazelisk/bazelisk-darwin-amd64
new file mode 100644
index 0000000..0e30766
--- /dev/null
+++ b/vendor/bazelisk/bazelisk-darwin-amd64
Binary files differ
diff --git a/vendor/bazelisk/bazelisk-darwin-arm64 b/vendor/bazelisk/bazelisk-darwin-arm64
new file mode 100644
index 0000000..949c68b
--- /dev/null
+++ b/vendor/bazelisk/bazelisk-darwin-arm64
Binary files differ
diff --git a/vendor/bazelisk/bazelisk-linux-amd64 b/vendor/bazelisk/bazelisk-linux-amd64
new file mode 100644
index 0000000..8bc97b1
--- /dev/null
+++ b/vendor/bazelisk/bazelisk-linux-amd64
Binary files differ
diff --git a/vendor/bazelisk/bazelisk-linux-arm64 b/vendor/bazelisk/bazelisk-linux-arm64
new file mode 100644
index 0000000..0285300
--- /dev/null
+++ b/vendor/bazelisk/bazelisk-linux-arm64
Binary files differ