diff --git a/.github/labeler-config.yml b/.github/labeler-config.yml new file mode 100644 index 0000000000..06aab917bc --- /dev/null +++ b/.github/labeler-config.yml @@ -0,0 +1,17 @@ +--- +area/ui: + - src/renderer/**/* +area/test: + - integration/**/* + - __mocks__/**/* +area/extension: + - extensions/**/* + - src/extensions/**/* +area/documentation: + - README.md + - docs/**/* +area/ci: + - .github/workflows/**/* + - .azure-pipelines.yml +dependencies: + - yarn.lock diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml new file mode 100644 index 0000000000..aed00b3de2 --- /dev/null +++ b/.github/workflows/labeler.yml @@ -0,0 +1,14 @@ +--- +name: "Pull Request Labeler" + +'on': + - pull_request + +jobs: + triage: + runs-on: ubuntu-latest + steps: + - uses: actions/labeler@v2 + with: + repo-token: "${{ secrets.GITHUB_TOKEN }}" + configuration-path: .github/labeler-config.yml diff --git a/extensions/telemetry/package-lock.json b/extensions/telemetry/package-lock.json index 57e74dc08b..bff56fc715 100644 --- a/extensions/telemetry/package-lock.json +++ b/extensions/telemetry/package-lock.json @@ -8,6 +8,12 @@ "version": "file:../../src/extensions/npm/extensions", "dev": true }, + "@types/analytics-node": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/analytics-node/-/analytics-node-3.1.3.tgz", + "integrity": "sha512-Yk299LUqnyJ6fNYQkLFd0yTfUwIvgfxH3f5WEX3ib0PC5T+mZgqcOPMDhNZ4AOD/A9tXKJQeBIb6KvgzuXflaQ==", + "dev": true + }, "@segment/loosely-validate-event": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@segment/loosely-validate-event/-/loosely-validate-event-2.0.0.tgz", diff --git a/extensions/telemetry/package.json b/extensions/telemetry/package.json index 3b6137b3ac..cfb2bd6fa3 100644 --- a/extensions/telemetry/package.json +++ b/extensions/telemetry/package.json @@ -15,6 +15,7 @@ "dependencies": {}, "devDependencies": { "@k8slens/extensions": "file:../../src/extensions/npm/extensions", + "@types/analytics-node": "^3.1.3", "ts-loader": "^8.0.4", "typescript": "^4.0.3", "webpack": "^4.44.2", diff --git a/package.json b/package.json index 0d830908f1..5e083f1364 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "kontena-lens", "productName": "Lens", "description": "Lens - The Kubernetes IDE", - "version": "4.0.0-alpha.2", + "version": "4.0.0-alpha.3", "main": "static/build/main.js", "copyright": "© 2020, Mirantis, Inc.", "license": "MIT", diff --git a/src/extensions/extension-manager.ts b/src/extensions/extension-manager.ts index 599e42f54b..6a26bf6f8a 100644 --- a/src/extensions/extension-manager.ts +++ b/src/extensions/extension-manager.ts @@ -142,8 +142,12 @@ export class ExtensionManager { continue } const absPath = path.resolve(folderPath, fileName); - if (!fs.existsSync(absPath) || !fs.lstatSync(absPath).isDirectory()) { // skip non-directories - continue; + if (!fs.existsSync(absPath)) { + continue + } + const lstat = await fs.lstat(absPath) + if (!lstat.isDirectory() && !lstat.isSymbolicLink()) { // skip non-directories + continue } const manifestPath = path.resolve(absPath, "package.json"); const ext = await this.getByManifest(manifestPath).catch(() => null) diff --git a/src/extensions/renderer-api/k8s-api.ts b/src/extensions/renderer-api/k8s-api.ts index 99b0363d41..eb118bd7b3 100644 --- a/src/extensions/renderer-api/k8s-api.ts +++ b/src/extensions/renderer-api/k8s-api.ts @@ -1,4 +1,6 @@ +export { isAllowedResource } from "../../common/rbac" export { apiManager } from "../../renderer/api/api-manager"; +export { KubeObjectStore } from "../../renderer/kube-object.store" export { KubeApi, forCluster, IKubeApiCluster } from "../../renderer/api/kube-api"; export { KubeObject } from "../../renderer/api/kube-object"; export { Pod, podsApi, IPodContainer, IPodContainerStatus } from "../../renderer/api/endpoints"; diff --git a/src/extensions/renderer-api/navigation.ts b/src/extensions/renderer-api/navigation.ts index 4119a9ca70..d069f753e1 100644 --- a/src/extensions/renderer-api/navigation.ts +++ b/src/extensions/renderer-api/navigation.ts @@ -1 +1,3 @@ -export { navigate, hideDetails, showDetails } from "../../renderer/navigation" +export { navigate, hideDetails, showDetails, getDetailsUrl } from "../../renderer/navigation" +export { RouteProps } from "react-router" +export { IURLParams } from "../../common/utils/buildUrl"; diff --git a/static/RELEASE_NOTES.md b/static/RELEASE_NOTES.md index dd168092a4..a797d716b8 100644 --- a/static/RELEASE_NOTES.md +++ b/static/RELEASE_NOTES.md @@ -2,7 +2,7 @@ Here you can find description of changes we've built into each release. While we try our best to make each upgrade automatic and as smooth as possible, there may be some cases where you might need to do something to ensure the application works smoothly. So please read through the release highlights! -## 4.0.0-alpha.2 (current version) +## 4.0.0-alpha.3 (current version) - Extension API - Improved pod logs @@ -11,6 +11,9 @@ Here you can find description of changes we've built into each release. While we - Add LoadBalancer information to Ingress view - Move tracker to an extension - Add support page (as an extension) +- Status bar visual fixes +- Fix proxy upgrade socket timeouts +- Fix UI staleness after network issues ## 3.6.6 - Fix labels' word boundary to cover only drawer badges