Gazelle: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Tag: Reverted
Line 37: Line 37:
)
)
</syntaxhighlight>
</syntaxhighlight>
=Overview=
Gazelle is a [[Bazel_BUILD_Files#Overview|BUILD file]] generator for Bazel projects.  It can create new <code>[[Bazel_BUILD_Files#Overview|BUILD.bazel]]</code> files for a project that follows language conventions, and it can update existing build files to include new sources, dependencies, and options.
Gazelle natively supports [[Go]] and [[Protocol_Buffers#Overview|protobuf]].
Gazelle may be run by Bazel using the <code>gazelle</code> rule:
<syntaxhighlight lang='bash'>
bazel run //:gazelle
</syntaxhighlight>
Alternatively, it may be installed and run as a command line tool.
Aside from generating BUILD files for the local source code, Gazelle can also generate build files for external repositories as part of the go_repository rule.

Revision as of 07:21, 23 November 2024

External

Internal

Overview

Gazelle is a BUILD file generator for Bazel projects. It can create new BUILD.bazel files for a project that follows language conventions, and it can update existing build files to include new sources, dependencies, and options.

Gazelle natively supports Go and protobuf.

Gazelle may be run by Bazel using the gazelle rule:

bazel run //:gazelle

Alternatively, it may be installed and run as a command line tool.

Generating BUILD Files

https://github.com/bazel-contrib/bazel-gazelle#gazelle-build-file-generator

Use Cases

Example:

bazel run //:gazelle -- update-repos golang.org/x/sys@v0.13.0

adds the following line to the WORKSPACE file:

go_repository(
    name = "org_golang_x_sys",
    importpath = "golang.org/x/sys",
    sum = "h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=",
    version = "v0.13.0",
)

Overview

Gazelle is a BUILD file generator for Bazel projects. It can create new BUILD.bazel files for a project that follows language conventions, and it can update existing build files to include new sources, dependencies, and options.

Gazelle natively supports Go and protobuf.

Gazelle may be run by Bazel using the gazelle rule:

bazel run //:gazelle

Alternatively, it may be installed and run as a command line tool.

Aside from generating BUILD files for the local source code, Gazelle can also generate build files for external repositories as part of the go_repository rule.