Skip to content

Commit

Permalink
Use rules_pkg instead of genrule (#1674)
Browse files Browse the repository at this point in the history
Part of #223.
  • Loading branch information
brentleyjones authored and chiragramani committed Jan 30, 2023
1 parent afc3d96 commit c23b1fd
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 15 deletions.
38 changes: 23 additions & 15 deletions BUILD
Original file line number Diff line number Diff line change
@@ -1,31 +1,39 @@
load("@buildifier_prebuilt//:rules.bzl", "buildifier")
load("@rules_pkg//pkg:tar.bzl", "pkg_tar")

# Release

# TODO: Use rules_pkg
genrule(
filegroup(
name = "release",
srcs = [":release_files"],
outs = [
"release.tar.gz",
"release.tar.gz.sha256",
srcs = [
":release_pkg",
":release_pkg_sha256",
],
)

genrule(
name = "release_pkg_sha256",
srcs = [":release_pkg"],
outs = ["release.tar.gz.sha256"],
cmd = """\
set -euo pipefail
outs=($(OUTS))
COPYFILE_DISABLE=1 tar czvfh "$${outs[0]}" \
--exclude .DS_Store \
--exclude **/*.xcodeproj \
--exclude ^bazel-out/ \
--exclude ^external/ \
*
shasum -a 256 "$${outs[0]}" > "$${outs[1]}"
shasum -a 256 $< > $@
""",
tags = ["manual"],
)

pkg_tar(
name = "release_pkg",
srcs = [":release_files"],
extension = "tar.gz",
mode = "0444",
owner = "0.0",
package_file_name = "release.tar.gz",
strip_prefix = ".",
tags = ["manual"],
)

filegroup(
name = "release_files",
srcs = [
Expand Down
5 changes: 5 additions & 0 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,11 @@ bazel_dep(
version = "6.0.0.1",
dev_dependency = True,
)
bazel_dep(
name = "rules_pkg",
version = "0.7.0",
dev_dependency = True,
)

non_module_deps = use_extension("//xcodeproj:extensions.bzl", "non_module_deps")
use_repo(
Expand Down
15 changes: 15 additions & 0 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,18 @@ http_archive(
load("@io_bazel_stardoc//:setup.bzl", "stardoc_repositories")

stardoc_repositories()

# rules_pkg

http_archive(
name = "rules_pkg",
sha256 = "451e08a4d78988c06fa3f9306ec813b836b1d076d0f055595444ba4ff22b867f",
urls = [
"https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.7.1/rules_pkg-0.7.1.tar.gz",
"https://github.com/bazelbuild/rules_pkg/releases/download/0.7.1/rules_pkg-0.7.1.tar.gz",
],
)

load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")

rules_pkg_dependencies()

0 comments on commit c23b1fd

Please sign in to comment.