mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Release 6.5.1
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
cde5cfef4b
commit
ef9250286e
@ -4,7 +4,7 @@
|
|||||||
"productName": "OpenLens",
|
"productName": "OpenLens",
|
||||||
"description": "OpenLens - Open Source IDE for Kubernetes",
|
"description": "OpenLens - Open Source IDE for Kubernetes",
|
||||||
"homepage": "https://github.com/lensapp/lens",
|
"homepage": "https://github.com/lensapp/lens",
|
||||||
"version": "6.5.0",
|
"version": "6.5.1",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/lensapp/lens.git"
|
"url": "git+https://github.com/lensapp/lens.git"
|
||||||
@ -184,7 +184,7 @@
|
|||||||
"@k8slens/application-for-electron-main": "^6.5.0",
|
"@k8slens/application-for-electron-main": "^6.5.0",
|
||||||
"@k8slens/button": "^1.0.0",
|
"@k8slens/button": "^1.0.0",
|
||||||
"@k8slens/cluster-settings": "^6.5.0",
|
"@k8slens/cluster-settings": "^6.5.0",
|
||||||
"@k8slens/core": "^6.5.0",
|
"@k8slens/core": "^6.5.1",
|
||||||
"@k8slens/ensure-binaries": "^6.5.0",
|
"@k8slens/ensure-binaries": "^6.5.0",
|
||||||
"@k8slens/error-boundary": "^1.0.0",
|
"@k8slens/error-boundary": "^1.0.0",
|
||||||
"@k8slens/event-emitter": "^1.0.0",
|
"@k8slens/event-emitter": "^1.0.0",
|
||||||
@ -192,7 +192,7 @@
|
|||||||
"@k8slens/keyboard-shortcuts": "^1.0.0",
|
"@k8slens/keyboard-shortcuts": "^1.0.0",
|
||||||
"@k8slens/kube-object": "^1.0.0",
|
"@k8slens/kube-object": "^1.0.0",
|
||||||
"@k8slens/kubectl-versions": "^1.0.0",
|
"@k8slens/kubectl-versions": "^1.0.0",
|
||||||
"@k8slens/legacy-extension-example": "^1.0.0",
|
"@k8slens/legacy-extension-example": "^1.0.1",
|
||||||
"@k8slens/legacy-extensions": "^1.0.0",
|
"@k8slens/legacy-extensions": "^1.0.0",
|
||||||
"@k8slens/legacy-global-di": "^1.0.0",
|
"@k8slens/legacy-global-di": "^1.0.0",
|
||||||
"@k8slens/list-layout": "^1.0.0",
|
"@k8slens/list-layout": "^1.0.0",
|
||||||
|
|||||||
24
package-lock.json
generated
24
package-lock.json
generated
@ -3833,10 +3833,6 @@
|
|||||||
"resolved": "packages/utility-features/startable-stoppable",
|
"resolved": "packages/utility-features/startable-stoppable",
|
||||||
"link": true
|
"link": true
|
||||||
},
|
},
|
||||||
"node_modules/@k8slens/table-tokens": {
|
|
||||||
"resolved": "packages/table",
|
|
||||||
"link": true
|
|
||||||
},
|
|
||||||
"node_modules/@k8slens/test-utils": {
|
"node_modules/@k8slens/test-utils": {
|
||||||
"resolved": "packages/utility-features/test-utils",
|
"resolved": "packages/utility-features/test-utils",
|
||||||
"link": true
|
"link": true
|
||||||
@ -33978,7 +33974,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"open-lens": {
|
"open-lens": {
|
||||||
"version": "6.5.0",
|
"version": "6.5.1",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@ -33989,7 +33985,7 @@
|
|||||||
"@k8slens/application-for-electron-main": "^6.5.0",
|
"@k8slens/application-for-electron-main": "^6.5.0",
|
||||||
"@k8slens/button": "^1.0.0",
|
"@k8slens/button": "^1.0.0",
|
||||||
"@k8slens/cluster-settings": "^6.5.0",
|
"@k8slens/cluster-settings": "^6.5.0",
|
||||||
"@k8slens/core": "^6.5.0",
|
"@k8slens/core": "^6.5.1",
|
||||||
"@k8slens/ensure-binaries": "^6.5.0",
|
"@k8slens/ensure-binaries": "^6.5.0",
|
||||||
"@k8slens/error-boundary": "^1.0.0",
|
"@k8slens/error-boundary": "^1.0.0",
|
||||||
"@k8slens/event-emitter": "^1.0.0",
|
"@k8slens/event-emitter": "^1.0.0",
|
||||||
@ -33997,7 +33993,7 @@
|
|||||||
"@k8slens/keyboard-shortcuts": "^1.0.0",
|
"@k8slens/keyboard-shortcuts": "^1.0.0",
|
||||||
"@k8slens/kube-object": "^1.0.0",
|
"@k8slens/kube-object": "^1.0.0",
|
||||||
"@k8slens/kubectl-versions": "^1.0.0",
|
"@k8slens/kubectl-versions": "^1.0.0",
|
||||||
"@k8slens/legacy-extension-example": "^1.0.0",
|
"@k8slens/legacy-extension-example": "^1.0.1",
|
||||||
"@k8slens/legacy-extensions": "^1.0.0",
|
"@k8slens/legacy-extensions": "^1.0.0",
|
||||||
"@k8slens/legacy-global-di": "^1.0.0",
|
"@k8slens/legacy-global-di": "^1.0.0",
|
||||||
"@k8slens/list-layout": "^1.0.0",
|
"@k8slens/list-layout": "^1.0.0",
|
||||||
@ -34195,7 +34191,7 @@
|
|||||||
},
|
},
|
||||||
"packages/core": {
|
"packages/core": {
|
||||||
"name": "@k8slens/core",
|
"name": "@k8slens/core",
|
||||||
"version": "6.5.0",
|
"version": "6.5.1",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@async-fn/jest": "1.6.4",
|
"@async-fn/jest": "1.6.4",
|
||||||
@ -34328,7 +34324,6 @@
|
|||||||
"@k8slens/routing": "^1.0.0-alpha.5",
|
"@k8slens/routing": "^1.0.0-alpha.5",
|
||||||
"@k8slens/run-many": "^1.0.0-alpha.1",
|
"@k8slens/run-many": "^1.0.0-alpha.1",
|
||||||
"@k8slens/startable-stoppable": "^1.0.0-alpha.1",
|
"@k8slens/startable-stoppable": "^1.0.0-alpha.1",
|
||||||
"@k8slens/table-tokens": "^6.5.0-alpha.7",
|
|
||||||
"@k8slens/tooltip": "^1.0.0-alpha.5",
|
"@k8slens/tooltip": "^1.0.0-alpha.5",
|
||||||
"@k8slens/utilities": "^1.0.0-alpha.1",
|
"@k8slens/utilities": "^1.0.0-alpha.1",
|
||||||
"@kubernetes/client-node": "^0.18.1",
|
"@kubernetes/client-node": "^0.18.1",
|
||||||
@ -34455,10 +34450,10 @@
|
|||||||
},
|
},
|
||||||
"packages/extension-api": {
|
"packages/extension-api": {
|
||||||
"name": "@k8slens/extensions",
|
"name": "@k8slens/extensions",
|
||||||
"version": "6.5.0",
|
"version": "6.5.1",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@k8slens/core": "6.5.0"
|
"@k8slens/core": "6.5.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/node": "^16.18.25",
|
"@types/node": "^16.18.25",
|
||||||
@ -34972,10 +34967,10 @@
|
|||||||
},
|
},
|
||||||
"packages/legacy-extension-example": {
|
"packages/legacy-extension-example": {
|
||||||
"name": "@k8slens/legacy-extension-example",
|
"name": "@k8slens/legacy-extension-example",
|
||||||
"version": "1.0.0",
|
"version": "1.0.1",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@k8slens/extensions": "^6.5.0",
|
"@k8slens/extensions": "^6.5.1",
|
||||||
"@types/node": "^16.18.25",
|
"@types/node": "^16.18.25",
|
||||||
"typescript": "^4.9.5",
|
"typescript": "^4.9.5",
|
||||||
"webpack": "^5.81.0",
|
"webpack": "^5.81.0",
|
||||||
@ -35228,7 +35223,7 @@
|
|||||||
},
|
},
|
||||||
"packages/release-tool": {
|
"packages/release-tool": {
|
||||||
"name": "@k8slens/release-tool",
|
"name": "@k8slens/release-tool",
|
||||||
"version": "6.5.0",
|
"version": "6.5.1",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"chalk": "^5.2.0",
|
"chalk": "^5.2.0",
|
||||||
@ -35312,6 +35307,7 @@
|
|||||||
"packages/table": {
|
"packages/table": {
|
||||||
"name": "@k8slens/table-tokens",
|
"name": "@k8slens/table-tokens",
|
||||||
"version": "6.5.0",
|
"version": "6.5.0",
|
||||||
|
"extraneous": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@k8slens/webpack": "^6.5.0",
|
"@k8slens/webpack": "^6.5.0",
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
"productName": "",
|
"productName": "",
|
||||||
"description": "Lens Desktop Core",
|
"description": "Lens Desktop Core",
|
||||||
"homepage": "https://github.com/lensapp/lens",
|
"homepage": "https://github.com/lensapp/lens",
|
||||||
"version": "6.5.0",
|
"version": "6.5.1",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/lensapp/lens.git"
|
"url": "git+https://github.com/lensapp/lens.git"
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
"name": "@k8slens/extensions",
|
"name": "@k8slens/extensions",
|
||||||
"productName": "OpenLens extensions",
|
"productName": "OpenLens extensions",
|
||||||
"description": "OpenLens - Open Source Kubernetes IDE: extensions",
|
"description": "OpenLens - Open Source Kubernetes IDE: extensions",
|
||||||
"version": "6.5.0",
|
"version": "6.5.1",
|
||||||
"copyright": "© 2022 OpenLens Authors",
|
"copyright": "© 2022 OpenLens Authors",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"main": "dist/extension-api.js",
|
"main": "dist/extension-api.js",
|
||||||
@ -25,7 +25,7 @@
|
|||||||
"clean": "rimraf dist/"
|
"clean": "rimraf dist/"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@k8slens/core": "6.5.0"
|
"@k8slens/core": "6.5.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/node": "^16.18.25",
|
"@types/node": "^16.18.25",
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
"name": "@k8slens/legacy-extension-example",
|
"name": "@k8slens/legacy-extension-example",
|
||||||
"private": false,
|
"private": false,
|
||||||
"description": "An example bundled Lens extensions using the v1 API",
|
"description": "An example bundled Lens extensions using the v1 API",
|
||||||
"version": "1.0.0",
|
"version": "1.0.1",
|
||||||
"type": "commonjs",
|
"type": "commonjs",
|
||||||
"files": [
|
"files": [
|
||||||
"dist"
|
"dist"
|
||||||
@ -36,7 +36,7 @@
|
|||||||
"lint:fix": "lens-lint --fix"
|
"lint:fix": "lens-lint --fix"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@k8slens/extensions": "^6.5.0",
|
"@k8slens/extensions": "^6.5.1",
|
||||||
"@types/node": "^16.18.25",
|
"@types/node": "^16.18.25",
|
||||||
"typescript": "^4.9.5",
|
"typescript": "^4.9.5",
|
||||||
"webpack": "^5.81.0",
|
"webpack": "^5.81.0",
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@k8slens/release-tool",
|
"name": "@k8slens/release-tool",
|
||||||
"version": "6.5.0",
|
"version": "6.5.1",
|
||||||
"description": "Release tool for lens monorepo",
|
"description": "Release tool for lens monorepo",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"private": true,
|
"private": true,
|
||||||
|
|||||||
@ -14,30 +14,27 @@ import { promisify } from "util";
|
|||||||
import { Octokit } from "@octokit/core";
|
import { Octokit } from "@octokit/core";
|
||||||
import type { components } from "@octokit/openapi-types";
|
import type { components } from "@octokit/openapi-types";
|
||||||
|
|
||||||
|
const isDebug = process.env.DEBUG === "true";
|
||||||
|
|
||||||
|
const debug = isDebug ? console.debug : () => {};
|
||||||
|
|
||||||
type SemVer = semver.SemVer;
|
type SemVer = semver.SemVer;
|
||||||
|
|
||||||
const { SemVer } = semver;
|
const { SemVer } = semver;
|
||||||
const _exec = promisify(child_process.exec);
|
|
||||||
const _execFile = promisify(child_process.execFile);
|
const _execFile = promisify(child_process.execFile);
|
||||||
|
|
||||||
const exec = ((cmd, ...args) => {
|
|
||||||
console.log("EXEC", cmd);
|
|
||||||
|
|
||||||
return _exec(cmd, ...args as any[]);
|
|
||||||
}) as typeof _exec;
|
|
||||||
|
|
||||||
const execFile = ((file, ...rest) => {
|
const execFile = ((file, ...rest) => {
|
||||||
if (Array.isArray(rest[0])) {
|
if (Array.isArray(rest[0])) {
|
||||||
console.log("EXEC-FILE", file, rest[0]);
|
debug("EXEC-FILE", file, rest[0]);
|
||||||
} else {
|
} else {
|
||||||
console.log("EXEC-FILE", file);
|
debug("EXEC-FILE", file);
|
||||||
}
|
}
|
||||||
|
|
||||||
return _execFile(file, ...rest as [any, any]);
|
return _execFile(file, ...rest as [any, any]);
|
||||||
}) as typeof _execFile;
|
}) as typeof _execFile;
|
||||||
|
|
||||||
const spawn = ((file, ...args) => {
|
const spawn = ((file, ...args) => {
|
||||||
console.log("SPAWN", file);
|
debug("SPAWN", file);
|
||||||
|
|
||||||
return _spawn(file, ...args as any[]);
|
return _spawn(file, ...args as any[]);
|
||||||
}) as typeof _spawn;
|
}) as typeof _spawn;
|
||||||
@ -75,17 +72,17 @@ interface ExtendedGithubPrData extends Omit<GithubPrData, "mergedAt"> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function getCurrentBranch(): Promise<string> {
|
async function getCurrentBranch(): Promise<string> {
|
||||||
return (await exec("git branch --show-current")).stdout.trim();
|
return (await execFile("git", ["branch", "--show-current"])).stdout.trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
async function getAbsolutePathToRepoRoot(): Promise<string> {
|
async function getAbsolutePathToRepoRoot(): Promise<string> {
|
||||||
return (await exec("git rev-parse --show-toplevel")).stdout.trim();
|
return (await execFile("git", ["rev-parse", "--show-toplevel"])).stdout.trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
async function fetchAllGitTags(): Promise<string[]> {
|
async function fetchAllGitTags(): Promise<string[]> {
|
||||||
await execFile("git", ["fetch", "--tags", "--force"]);
|
await execFile("git", ["fetch", "--tags", "--force"]);
|
||||||
|
|
||||||
const { stdout } = await exec("git tag --list", { encoding: "utf-8" });
|
const { stdout } = await execFile("git", ["tag", "--list"], { encoding: "utf-8" });
|
||||||
|
|
||||||
return stdout
|
return stdout
|
||||||
.split(/\r?\n/)
|
.split(/\r?\n/)
|
||||||
@ -156,10 +153,14 @@ function formatSemverForMilestone(version: SemVer): string {
|
|||||||
return `${version.major}.${version.minor}.${version.patch}`;
|
return `${version.major}.${version.minor}.${version.patch}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
function formatVersionForPickingPrs(version: SemVer): string {
|
function formatVersionForPickingPrs(version: SemVer, isMasterBranch: boolean): string {
|
||||||
|
if (isMasterBranch) {
|
||||||
return `${version.major}.${version.minor}.${version.patch}`;
|
return `${version.major}.${version.minor}.${version.patch}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return `${version.major}.${version.minor}.${version.patch+1}`;
|
||||||
|
}
|
||||||
|
|
||||||
async function deleteAndClosePreviousReleaseBranch(prBase: string, prBranch: string) {
|
async function deleteAndClosePreviousReleaseBranch(prBase: string, prBranch: string) {
|
||||||
const pullRequests = await octokit.request("GET /repos/{owner}/{repo}/pulls", {
|
const pullRequests = await octokit.request("GET /repos/{owner}/{repo}/pulls", {
|
||||||
owner: "lensapp",
|
owner: "lensapp",
|
||||||
@ -279,7 +280,7 @@ function sortExtendedGithubPrData(left: ExtendedGithubPrData, right: ExtendedGit
|
|||||||
async function getRelevantPRs(previousReleasedVersion: string, baseBranch: string): Promise<ExtendedGithubPrData[]> {
|
async function getRelevantPRs(previousReleasedVersion: string, baseBranch: string): Promise<ExtendedGithubPrData[]> {
|
||||||
console.log(`retrieving previous 200 PRs from ${baseBranch}...`);
|
console.log(`retrieving previous 200 PRs from ${baseBranch}...`);
|
||||||
|
|
||||||
const milestone = formatVersionForPickingPrs(await getCurrentVersionOfSubPackage("core"));
|
const milestone = formatVersionForPickingPrs(await getCurrentVersionOfSubPackage("core"), baseBranch === "master");
|
||||||
const mergedPrsDataPromises = [1, 2, 3, 4, 5].map(page => octokit.request("GET /repos/{owner}/{repo}/pulls", {
|
const mergedPrsDataPromises = [1, 2, 3, 4, 5].map(page => octokit.request("GET /repos/{owner}/{repo}/pulls", {
|
||||||
owner: "lensapp",
|
owner: "lensapp",
|
||||||
repo: "lens",
|
repo: "lens",
|
||||||
@ -299,7 +300,12 @@ async function getRelevantPRs(previousReleasedVersion: string, baseBranch: strin
|
|||||||
const relevantPrsQuery = await Promise.all(
|
const relevantPrsQuery = await Promise.all(
|
||||||
milestoneRelevantPrs.map(async pr => ({
|
milestoneRelevantPrs.map(async pr => ({
|
||||||
pr,
|
pr,
|
||||||
stdout: (await exec(`git tag v${previousReleasedVersion} --no-contains ${pr.merge_commit_sha}`)).stdout,
|
stdout: (await execFile("git", [
|
||||||
|
"tag",
|
||||||
|
`v${previousReleasedVersion}`,
|
||||||
|
"--no-contains",
|
||||||
|
pr.merge_commit_sha as string,
|
||||||
|
])).stdout,
|
||||||
})),
|
})),
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -450,10 +456,6 @@ async function cherryPickCommits(prs: ExtendedGithubPrData[]): Promise<void> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function pickRelevantPrs(prs: ExtendedGithubPrData[], isMasterBranch: boolean): Promise<ExtendedGithubPrData[]> {
|
async function pickRelevantPrs(prs: ExtendedGithubPrData[], isMasterBranch: boolean): Promise<ExtendedGithubPrData[]> {
|
||||||
if (prs.length === 0) {
|
|
||||||
throw new Error("Cannot pick relevant PRs for release if there are none. Are the milestones on github correct?");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isMasterBranch || process.env.PICK_ALL_PRS === "true") {
|
if (isMasterBranch || process.env.PICK_ALL_PRS === "true") {
|
||||||
return prs;
|
return prs;
|
||||||
}
|
}
|
||||||
@ -492,6 +494,15 @@ async function createRelease(): Promise<void> {
|
|||||||
relevantPrs.push(...await getRelevantPRs(previousReleasedVersion, prBase));
|
relevantPrs.push(...await getRelevantPRs(previousReleasedVersion, prBase));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (relevantPrs.length === 0) {
|
||||||
|
console.error(chalk.bold("No PRs have been found relating to the previous release, stopping..."), {
|
||||||
|
previousReleasedVersion,
|
||||||
|
prBase,
|
||||||
|
currentK8slensCoreVersion,
|
||||||
|
});
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
const selectedPrs = await pickRelevantPrs(relevantPrs, isMasterBranch);
|
const selectedPrs = await pickRelevantPrs(relevantPrs, isMasterBranch);
|
||||||
|
|
||||||
if (selectedPrs.length === 0) {
|
if (selectedPrs.length === 0) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user