[kbn/bazel-packages] rename (#127350)

This commit is contained in:
Spencer 2022-03-09 14:10:56 -08:00 committed by GitHub
parent afb50e02a0
commit cdeea9f0e0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 46 additions and 40 deletions

1
.github/CODEOWNERS vendored
View file

@ -221,6 +221,7 @@
/packages/kbn-test/ @elastic/kibana-operations
/packages/kbn-ui-shared-deps-npm/ @elastic/kibana-operations
/packages/kbn-ui-shared-deps-src/ @elastic/kibana-operations
/packages/kbn-bazel-packages/ @elastic/kibana-operations
/packages/kbn-es-archiver/ @elastic/kibana-operations
/packages/kbn-utils/ @elastic/kibana-operations
/packages/kbn-cli-dev-mode/ @elastic/kibana-operations

View file

@ -462,6 +462,7 @@
"@jest/reporters": "^26.6.2",
"@kbn/babel-code-parser": "link:bazel-bin/packages/kbn-babel-code-parser",
"@kbn/babel-preset": "link:bazel-bin/packages/kbn-babel-preset",
"@kbn/bazel-packages": "link:bazel-bin/packages/kbn-bazel-packages",
"@kbn/cli-dev-mode": "link:bazel-bin/packages/kbn-cli-dev-mode",
"@kbn/dev-utils": "link:bazel-bin/packages/kbn-dev-utils",
"@kbn/docs-utils": "link:bazel-bin/packages/kbn-docs-utils",
@ -472,7 +473,6 @@
"@kbn/expect": "link:bazel-bin/packages/kbn-expect",
"@kbn/generate": "link:bazel-bin/packages/kbn-generate",
"@kbn/optimizer": "link:bazel-bin/packages/kbn-optimizer",
"@kbn/packages": "link:bazel-bin/packages/kbn-packages",
"@kbn/plugin-generator": "link:bazel-bin/packages/kbn-plugin-generator",
"@kbn/plugin-helpers": "link:bazel-bin/packages/kbn-plugin-helpers",
"@kbn/pm": "link:packages/kbn-pm",
@ -578,6 +578,7 @@
"@types/kbn__analytics": "link:bazel-bin/packages/kbn-analytics/npm_module_types",
"@types/kbn__apm-config-loader": "link:bazel-bin/packages/kbn-apm-config-loader/npm_module_types",
"@types/kbn__apm-utils": "link:bazel-bin/packages/kbn-apm-utils/npm_module_types",
"@types/kbn__bazel-packages": "link:bazel-bin/packages/kbn-bazel-packages/npm_module_types",
"@types/kbn__cli-dev-mode": "link:bazel-bin/packages/kbn-cli-dev-mode/npm_module_types",
"@types/kbn__config": "link:bazel-bin/packages/kbn-config/npm_module_types",
"@types/kbn__config-schema": "link:bazel-bin/packages/kbn-config-schema/npm_module_types",
@ -598,7 +599,6 @@
"@types/kbn__mapbox-gl": "link:bazel-bin/packages/kbn-mapbox-gl/npm_module_types",
"@types/kbn__monaco": "link:bazel-bin/packages/kbn-monaco/npm_module_types",
"@types/kbn__optimizer": "link:bazel-bin/packages/kbn-optimizer/npm_module_types",
"@types/kbn__packages": "link:bazel-bin/packages/kbn-packages/npm_module_types",
"@types/kbn__plugin-generator": "link:bazel-bin/packages/kbn-plugin-generator/npm_module_types",
"@types/kbn__plugin-helpers": "link:bazel-bin/packages/kbn-plugin-helpers/npm_module_types",
"@types/kbn__react-field": "link:bazel-bin/packages/kbn-react-field/npm_module_types",

View file

@ -19,6 +19,7 @@ filegroup(
"//packages/kbn-apm-utils:build",
"//packages/kbn-babel-code-parser:build",
"//packages/kbn-babel-preset:build",
"//packages/kbn-bazel-packages:build",
"//packages/kbn-cli-dev-mode:build",
"//packages/kbn-config-schema:build",
"//packages/kbn-config:build",
@ -44,7 +45,6 @@ filegroup(
"//packages/kbn-mapbox-gl:build",
"//packages/kbn-monaco:build",
"//packages/kbn-optimizer:build",
"//packages/kbn-packages:build",
"//packages/kbn-plugin-generator:build",
"//packages/kbn-plugin-helpers:build",
"//packages/kbn-react-field:build",
@ -97,6 +97,7 @@ filegroup(
"//packages/kbn-analytics:build_types",
"//packages/kbn-apm-config-loader:build_types",
"//packages/kbn-apm-utils:build_types",
"//packages/kbn-bazel-packages:build_types",
"//packages/kbn-cli-dev-mode:build_types",
"//packages/kbn-config-schema:build_types",
"//packages/kbn-config:build_types",
@ -117,7 +118,6 @@ filegroup(
"//packages/kbn-mapbox-gl:build_types",
"//packages/kbn-monaco:build_types",
"//packages/kbn-optimizer:build_types",
"//packages/kbn-packages:build_types",
"//packages/kbn-plugin-generator:build_types",
"//packages/kbn-plugin-helpers:build_types",
"//packages/kbn-react-field:build_types",

View file

@ -2,8 +2,8 @@ load("@npm//@bazel/typescript:index.bzl", "ts_config")
load("@build_bazel_rules_nodejs//:index.bzl", "js_library")
load("//src/dev/bazel:index.bzl", "jsts_transpiler", "pkg_npm", "pkg_npm_types", "ts_project")
PKG_DIRNAME = "kbn-packages"
PKG_REQUIRE_NAME = "@kbn/packages"
PKG_DIRNAME = "kbn-bazel-packages"
PKG_REQUIRE_NAME = "@kbn/bazel-packages"
SOURCE_FILES = glob(
[

View file

@ -0,0 +1,3 @@
# @kbn/bazel-packages
APIs for dealing with bazel packages in the Kibana repo

View file

@ -9,5 +9,5 @@
module.exports = {
preset: '@kbn/test/jest_node',
rootDir: '../..',
roots: ['<rootDir>/packages/kbn-packages'],
roots: ['<rootDir>/packages/kbn-bazel-packages'],
};

View file

@ -1,5 +1,5 @@
{
"name": "@kbn/packages",
"name": "@kbn/bazel-packages",
"private": true,
"version": "1.0.0",
"main": "./target_node/index.js",

View file

@ -9,30 +9,30 @@
import Fs from 'fs';
import Path from 'path';
import { Package } from './package';
import { BazelPackage } from './bazel_package';
const OWN_BAZEL_BUILD_FILE = Fs.readFileSync(Path.resolve(__dirname, '../BUILD.bazel'), 'utf8');
describe('hasBuildRule()', () => {
it('returns true if there is a rule with the name "build"', () => {
const pkg = new Package('foo', {}, OWN_BAZEL_BUILD_FILE);
const pkg = new BazelPackage('foo', {}, OWN_BAZEL_BUILD_FILE);
expect(pkg.hasBuildRule()).toBe(true);
});
it('returns false if there is no rule with name "build"', () => {
const pkg = new Package('foo', {}, ``);
const pkg = new BazelPackage('foo', {}, ``);
expect(pkg.hasBuildRule()).toBe(false);
});
});
describe('hasBuildTypesRule()', () => {
it('returns true if there is a rule with the name "build_types"', () => {
const pkg = new Package('foo', {}, OWN_BAZEL_BUILD_FILE);
const pkg = new BazelPackage('foo', {}, OWN_BAZEL_BUILD_FILE);
expect(pkg.hasBuildTypesRule()).toBe(true);
});
it('returns false if there is no rule with name "build_types"', () => {
const pkg = new Package('foo', {}, ``);
const pkg = new BazelPackage('foo', {}, ``);
expect(pkg.hasBuildTypesRule()).toBe(false);
});
});

View file

@ -13,7 +13,7 @@ import { REPO_ROOT } from '@kbn/utils';
const BUILD_RULE_NAME = /(^|\s)name\s*=\s*"build"/;
const BUILD_TYPES_RULE_NAME = /(^|\s)name\s*=\s*"build_types"/;
export class Package {
export class BazelPackage {
static async fromDir(dir: string) {
let pkg;
try {
@ -31,7 +31,7 @@ export class Package {
}
}
return new Package(Path.relative(REPO_ROOT, dir), pkg, buildBazelContent);
return new BazelPackage(Path.relative(REPO_ROOT, dir), pkg, buildBazelContent);
}
constructor(

View file

@ -12,9 +12,13 @@ import globby from 'globby';
import { REPO_ROOT } from '@kbn/utils';
import { asyncMapWithLimit } from '@kbn/std';
import { Package } from './package';
import { BazelPackage } from './bazel_package';
export async function discoverPackages() {
/**
* Search the local Kibana repo for bazel packages and return an array of BazelPackage objects
* representing each package found.
*/
export async function discoverBazelPackages() {
const packageJsons = globby.sync('*/package.json', {
cwd: Path.resolve(REPO_ROOT, 'packages'),
absolute: true,
@ -23,6 +27,6 @@ export async function discoverPackages() {
return await asyncMapWithLimit(
packageJsons.sort((a, b) => a.localeCompare(b)),
10,
(path) => Package.fromDir(Path.dirname(path))
(path) => BazelPackage.fromDir(Path.dirname(path))
);
}

View file

@ -8,11 +8,11 @@
import { generatePackagesBuildBazelFile } from './generate_packages_build_bazel_file';
import { Package } from './package';
import { BazelPackage } from './bazel_package';
it('produces a valid BUILD.bazel file', () => {
const packages = [
new Package(
new BazelPackage(
'foo',
{},
`
@ -24,7 +24,7 @@ it('produces a valid BUILD.bazel file', () => {
)
`
),
new Package(
new BazelPackage(
'bar',
{},
`
@ -33,7 +33,7 @@ it('produces a valid BUILD.bazel file', () => {
)
`
),
new Package(
new BazelPackage(
'bar',
{},
`
@ -42,7 +42,7 @@ it('produces a valid BUILD.bazel file', () => {
)
`
),
new Package('bar', {}),
new BazelPackage('bar', {}),
];
expect(generatePackagesBuildBazelFile(packages)).toMatchInlineSnapshot(`

View file

@ -6,9 +6,9 @@
* Side Public License, v 1.
*/
import { Package } from './package';
import { BazelPackage } from './bazel_package';
export function generatePackagesBuildBazelFile(packages: Package[]) {
export function generatePackagesBuildBazelFile(packages: BazelPackage[]) {
return `################
################
## This file is automatically generated, to create a new package use \`node scripts/generate package --help\`

View file

@ -7,4 +7,5 @@
*/
export * from './discover_packages';
export type { BazelPackage } from './bazel_package';
export * from './generate_packages_build_bazel_file';

View file

@ -27,7 +27,7 @@ NPM_MODULE_EXTRA_FILES = glob(["templates/**/*"]) + [
RUNTIME_DEPS = [
"//packages/kbn-dev-utils",
"//packages/kbn-packages",
"//packages/kbn-bazel-packages",
"//packages/kbn-utils",
"@npm//ejs",
"@npm//normalize-path",
@ -35,7 +35,7 @@ RUNTIME_DEPS = [
TYPES_DEPS = [
"//packages/kbn-dev-utils:npm_module_types",
"//packages/kbn-packages:npm_module_types",
"//packages/kbn-bazel-packages:npm_module_types",
"//packages/kbn-utils:npm_module_types",
"@npm//ejs",
"@npm//normalize-path",

View file

@ -19,7 +19,7 @@ import {
isFailError,
sortPackageJson,
} from '@kbn/dev-utils';
import { discoverPackages, generatePackagesBuildBazelFile } from '@kbn/packages';
import { discoverBazelPackages, generatePackagesBuildBazelFile } from '@kbn/bazel-packages';
import normalizePath from 'normalize-path';
const ROOT_PKG_DIR = Path.resolve(REPO_ROOT, 'packages');
@ -173,7 +173,7 @@ export function runGenerateCli() {
await Fsp.writeFile(
Path.resolve(REPO_ROOT, 'packages/BUILD.bazel'),
generatePackagesBuildBazelFile(await discoverPackages())
generatePackagesBuildBazelFile(await discoverBazelPackages())
);
log.info('Updated packages/BUILD.bazel');

View file

@ -1,3 +0,0 @@
# @kbn/packages
Empty package generated by @kbn/generate

View file

@ -2929,6 +2929,10 @@
version "0.0.0"
uid ""
"@kbn/bazel-packages@link:bazel-bin/packages/kbn-bazel-packages":
version "0.0.0"
uid ""
"@kbn/cli-dev-mode@link:bazel-bin/packages/kbn-cli-dev-mode":
version "0.0.0"
uid ""
@ -3029,10 +3033,6 @@
version "0.0.0"
uid ""
"@kbn/packages@link:bazel-bin/packages/kbn-packages":
version "0.0.0"
uid ""
"@kbn/plugin-generator@link:bazel-bin/packages/kbn-plugin-generator":
version "0.0.0"
uid ""
@ -5922,6 +5922,10 @@
version "0.0.0"
uid ""
"@types/kbn__bazel-packages@link:bazel-bin/packages/kbn-bazel-packages/npm_module_types":
version "0.0.0"
uid ""
"@types/kbn__cli-dev-mode@link:bazel-bin/packages/kbn-cli-dev-mode/npm_module_types":
version "0.0.0"
uid ""
@ -6002,10 +6006,6 @@
version "0.0.0"
uid ""
"@types/kbn__packages@link:bazel-bin/packages/kbn-packages/npm_module_types":
version "0.0.0"
uid ""
"@types/kbn__plugin-generator@link:bazel-bin/packages/kbn-plugin-generator/npm_module_types":
version "0.0.0"
uid ""