assemble_maven
assemble_maven(name, developers, license, package, project_description, project_name, project_url, scm_url, target, version_file, version_overrides, workspace_refs)
Assemble Java package for subsequent deployment to Maven repo
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| developers | Project developers to fill into pom.xml | Dictionary: String -> List of strings | optional | {} |
| license | Project license to fill into pom.xml | String | optional | "apache" |
| package | Bazel package of this target. Must match one defined in _maven_packages |
String | optional | "" |
| project_description | Project description to fill into pom.xml | String | optional | "PROJECT_DESCRIPTION" |
| project_name | Project name to fill into pom.xml | String | optional | "PROJECT_NAME" |
| project_url | Project URL to fill into pom.xml | String | optional | "PROJECT_URL" |
| scm_url | Project source control URL to fill into pom.xml | String | optional | "PROJECT_URL" |
| target | Java target for subsequent deployment | Label | required | |
| version_file | File containing version string. Alternatively, pass --define version=VERSION to Bazel invocation. Not specifying version at all defaults to '0.0.0' | Label | optional | None |
| version_overrides | Dictionary of maven artifact : version to pin artifact versions to | Dictionary: String -> String | optional | {} |
| workspace_refs | JSON file describing dependencies to other Bazel workspaces | Label | optional | None |
assemble_npm
assemble_npm(name, target, version_file)
Assemble npm_package target for further deployment
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| target | npm_library label to be included in the package |
Label | required | |
| version_file | File containing version string. Alternatively, pass --define version=VERSION to Bazel invocation. Not specifying version at all defaults to '0.0.0' | Label | optional | None |
assemble_pip
assemble_pip(name, author, author_email, classifiers, description, install_requires, keywords, license, long_description_file, package_name, target, url, version_file)
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| author | Details about the author | String | required | |
| author_email | The email for the author | String | required | |
| classifiers | A list of strings, containing Python package classifiers | List of strings | required | |
| description | A string with the short description of the package | String | required | |
| install_requires | A list of strings which are names of required packages for this one | List of strings | required | |
| keywords | A list of strings, containing keywords | List of strings | required | |
| license | The type of license to use | String | required | |
| long_description_file | A label with the long description of the package. Usually a README or README.rst file | Label | required | |
| package_name | A string with Python pip package name | String | required | |
| target | py_library label to be included in the package |
Label | required | |
| url | A homepage for the project | String | required | |
| version_file | File containing version string. Alternatively, pass --define version=VERSION to Bazel invocation. Not specifying version at all defaults to '0.0.0' | Label | optional | None |
assemble_versioned
assemble_versioned(name, targets, version_file)
Version multiple archives for subsequent simultaneous deployment
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| targets | Archives to version and put into output archive | List of labels | optional | [] |
| version_file | File containing version string | Label | optional | None |
checksum
checksum(name, archive)
Computes SHA256 checksum of file
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| archive | Archive to compute checksum of | Label | required |
deploy_apt
deploy_apt(name, release, snapshot, target)
Deploy package built with assemble_apt to APT repository
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| release | Release repository to deploy apt artifact to | String | required | |
| snapshot | Snapshot repository to deploy apt artifact to | String | required | |
| target | assemble_apt label to deploy | Label | optional | None |
deploy_brew
deploy_brew(name, checksum, formula, release, snapshot, type, version_file)
Deploy Homebrew (Caskroom) formula to Homebrew tap
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| checksum | Checksum of deployed artifact | Label | optional | None |
| formula | The brew formula definition | Label | required | |
| release | Release repository to deploy brew artifact to | String | required | |
| snapshot | Snapshot repository to deploy brew artifact to | String | required | |
| type | Type of deployment (Homebrew/Caskroom). Cask is generally used for graphic applications | String | optional | "brew" |
| version_file | File containing version string. Alternatively, pass --define version=VERSION to Bazel invocation. Not specifying version at all defaults to '0.0.0' | Label | optional | None |
deploy_github
deploy_github(name, archive, organisation, release_description, repository, title, title_append_version, version_file)
Deploy assemble_versioned target to GitHub Releases
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| archive | assemble_versioned label to be deployed. |
Label | optional | None |
| organisation | Github organisation to deploy to | String | required | |
| release_description | Description of GitHub release | Label | optional | None |
| repository | Github repository to deploy to within organisation | String | required | |
| title | Title of GitHub release | String | optional | "" |
| title_append_version | Append version to GitHub release title | Boolean | optional | False |
| version_file | File containing version string. Alternatively, pass --define version=VERSION to Bazel invocation. Not specifying version at all defaults to '0.0.0' | Label | optional | None |
deploy_maven
deploy_maven(name, release, snapshot, target)
Deploy assemble_maven target into Maven repo
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| release | Release repository to release maven artifact to | String | required | |
| snapshot | Snapshot repository to release maven artifact to | String | required | |
| target | assemble_maven target to deploy | Label | required |
deploy_npm
deploy_npm(name, release, snapshot, target)
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| release | Release repository to deploy npm artifact to | String | required | |
| snapshot | Snapshot repository to deploy npm artifact to | String | required | |
| target | assemble_npm label to be included in the package |
Label | required |
deploy_packer
deploy_packer(name, target)
Execute Packer to perform deployment
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| target | assemble_packer label to be deployed. |
Label | optional | None |
deploy_pip
deploy_pip(name, release, snapshot, target)
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| release | Remote repository to deploy pip release to | String | required | |
| snapshot | Remote repository to deploy pip snapshot to | String | required | |
| target | assemble_pip label to be included in the package |
Label | required |
deploy_rpm
deploy_rpm(name, release, snapshot, target)
Deploy package built with assemble_rpm to RPM repository
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| release | Remote repository to deploy rpm release to | String | required | |
| snapshot | Remote repository to deploy rpm snapshot to | String | required | |
| target | assemble_rpm target to deploy |
Label | optional | None |
generate_json_config
generate_json_config(name, substitutions, template)
Fills in JSON template with provided values
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| substitutions | Values to fill in | Dictionary: String -> String | optional | {} |
| template | JSON template to fill in values | Label | optional | None |
java_deps
java_deps(name, java_deps_root, maven_name, target, version_file)
Packs Java library alongside with its dependencies into archive
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| java_deps_root | Folder inside archive to put JARs into | String | optional | "" |
| maven_name | Name JAR files inside archive based on Maven coordinates | Boolean | optional | False |
| target | Java target to pack into archive | Label | required | |
| version_file | File containing version string. Alternatively, pass --define version=VERSION to Bazel invocation. Not specifying version at all defaults to '0.0.0' | Label | optional | None |
tgz2zip
tgz2zip(name, output_filename, prefix, prefix_file, tgz)
Converts .tar.gz into .zip
ATTRIBUTES
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| output_filename | Resulting filename | String | required | |
| prefix | Prefix of files in archive | String | optional | "" |
| prefix_file | Prefix of files in archive (as a file) | Label | optional | None |
| tgz | Input .tar.gz archive | Label | required |
JarToMavenCoordinatesMapping
JarToMavenCoordinatesMapping(filename, maven_coordinates)
FIELDS
| Name | Description |
|---|---|
| filename | jar filename |
| maven_coordinates | Maven coordinates of the jar |
JavaLibInfo
JavaLibInfo(target_coordinates, target_deps_coordinates)
FIELDS
MavenDeploymentInfo
MavenDeploymentInfo(jar, srcjar, pom)
FIELDS
| Name | Description |
|---|---|
| jar | JAR file to deploy |
| srcjar | JAR file with sources |
| pom | Accompanying pom.xml file |
MavenPomInfo
MavenPomInfo(direct_pom_deps, transitive_pom_deps)
FIELDS
| Name | Description |
|---|---|
| direct_pom_deps | Maven coordinates declared directly by a target |
| transitive_pom_deps | Maven coordinates for dependencies, transitively collected |
TransitiveJarToMavenCoordinatesMapping
TransitiveJarToMavenCoordinatesMapping(mapping)
FIELDS
| Name | Description |
|---|---|
| mapping | maps jar filename to coordinates |
assemble_apt
assemble_apt(name, package_name, maintainer, description, version_file, installation_dir, workspace_refs, archives, empty_dirs, files, depends, symlinks, permissions)
Assemble package for installation with APT
PARAMETERS
| Name | Description | Default Value |
|---|---|---|
| name | A unique name for this target. | none |
| package_name | Package name for built .deb package https://www.debian.org/doc/debian-policy/ch-controlfields#package | none |
| maintainer | The package maintainer's name and email address. The name must come first, then the email address inside angle brackets <> (in RFC822 format) | none |
| description | description of the built package https://www.debian.org/doc/debian-policy/ch-controlfields#description | none |
| version_file | File containing version number of a package. Alternatively, pass --define version=VERSION to Bazel invocation. Specifying commit SHA will result in prepending '0.0.0' to it to comply with Debian rules. Not specifying version at all defaults to '0.0.0' https://www.debian.org/doc/debian-policy/ch-controlfields#version | None |
| installation_dir | directory into which .deb package is unpacked at installation | None |
| workspace_refs | JSON file with other Bazel workspace references | None |
| archives | Bazel labels of archives that go into .deb package | [] |
| empty_dirs | list of empty directories created at package installation | [] |
| files | mapping between Bazel labels of archives that go into .deb package and their resulting location on .deb package installation | {} |
| depends | list of Debian packages this package depends on https://www.debian.org/doc/debian-policy/ch-relationships.htm | [] |
| symlinks | mapping between source and target of symbolic links created at installation | {} |
| permissions | mapping between paths and UNIX permissions | {} |
assemble_aws
assemble_aws(name, ami_name, install, region, files)
Assemble files for AWS deployment
PARAMETERS
assemble_azure
assemble_azure(name, image_name, resource_group_name, install, files)
Assemble files for GCP deployment
PARAMETERS
assemble_gcp
assemble_gcp(name, project_id, install, zone, image_name, image_family, files, image_licenses, disable_default_service_account, source_image_family)
Assemble files for GCP deployment
PARAMETERS
assemble_packer
assemble_packer(name, config, files)
Assemble files for HashiCorp Packer deployment
PARAMETERS
| Name | Description | Default Value |
|---|---|---|
| name | A unique name for this target. | none |
| config | Packer JSON config | none |
| files | Files to include into deployment | {} |
assemble_rpm
assemble_rpm(name, package_name, spec_file, version_file, workspace_refs, installation_dir, archives, empty_dirs, files, permissions, symlinks, tags)
Assemble package for installation with RPM
PARAMETERS
assemble_targz
assemble_targz(name, output_filename, targets, additional_files, empty_directories, permissions, append_version, visibility, tags)
Assemble distribution archive (.tar.gz)
PARAMETERS
assemble_zip
assemble_zip(name, output_filename, targets, additional_files, empty_directories, permissions, append_version, visibility)
Assemble distribution archive (.zip)
PARAMETERS