Skip to content

Commit d1d27cc

Browse files
committed
Merge branch 'update-docs' of github.com:weaveworks/weave-gitops into update-docs
2 parents 15544da + 7bec817 commit d1d27cc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+421
-503
lines changed

.eslintrc

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,23 @@
66
"plugin:@typescript-eslint/recommended",
77
"plugin:import/typescript"
88
],
9+
"plugins": [
10+
"@typescript-eslint",
11+
"import"
12+
],
913
"rules": {
1014
"import/default": 0,
1115
"import/no-named-as-default-member": 0,
1216
"import/named": 2,
13-
"import/order": 2,
17+
"import/order": [
18+
2,
19+
{
20+
"alphabetize": {
21+
"order": "asc",
22+
"caseInsensitive": true
23+
}
24+
}
25+
],
1426
"@typescript-eslint/explicit-module-boundary-types": 0,
1527
"@typescript-eslint/no-explicit-any": 0,
1628
"@typescript-eslint/ban-ts-comment": 0,
@@ -20,5 +32,5 @@
2032
"ignorePatterns": "rpc",
2133
"parserOptions": {
2234
"project": "./tsconfig.json"
23-
}
35+
}
2436
}

README.md

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,43 +6,55 @@
66
[![Release](https://img.shields.io/github/v/release/weaveworks/weave-gitops?include_prereleases)](https://github.com/weaveworks/weave-gitops/releases/latest)
77
[![FOSSA Status](https://app.fossa.com/api/projects/custom%2B19155%2Fgithub.com%2Fweaveworks%2Fweave-gitops.svg?type=shield)](https://app.fossa.com/reports/005da7c4-1f10-4889-9432-8b97c2084e41)
88

9-
Weave GitOps is a simple open source developer platform for people who want cloud native applications, without needing
10-
Kubernetes expertise. Experience how easy it is to enable GitOps and run your apps in a cluster. Use git to collaborate
9+
Weave GitOps is a simple, open source developer platform for people who want cloud native applications but who don't have
10+
Kubernetes expertise. Experience how easy it is to enable GitOps and run your apps in a cluster. Use Git to collaborate
1111
with team members making new deployments easy and secure. Start with what developers need to run apps, and then easily
1212
extend to define and run your own enterprise platform.
1313

1414
From Kubernetes run Weave GitOps to get:
1515

1616
1. Application Operations: manage and automate deployment pipelines for apps and more
1717
2. Platforms: the easy way to have your own custom PaaS on cloud or on premise
18-
3. Extensions: coordinate Kubernetes rollouts with eg. VMs, DBs and cloud services
18+
3. Extensions: coordinate Kubernetes rollouts with eg. VMs, databases, and cloud services
1919

20-
Our vision is that all cloud native applications should be easy for developers, including operations which should be
20+
Our vision is that all cloud native applications should be easy for developers, and that operations should be
2121
automated and secure. Weave GitOps is a highly extensible tool to achieve this by placing Kubernetes and GitOps at the
2222
core and building a platform around that.
2323

24-
We use GitOps tools throughout. Today Weave GitOps defaults are Flux, Kustomize, Helm, Sops and Kubernetes CAPI. If you
25-
use Flux already then you can easily add Weave GitOps to create a platform management overlay.
24+
Weave GitOps defaults are [Flux](https://fluxcd.io/flux/) as the GitOps engine, Kustomize, Helm, Sops, and Kubernetes CAPI. If you use Flux already, then you can easily add Weave GitOps to create a platform management overlay.
25+
26+
Weave GitOps Open Source provides:
27+
28+
- Continuous Delivery through GitOps for apps and infrastructure.
29+
- Support for GitHub, GitLab, and Bitbucket; S3-compatible buckets as a source; all major container registries; and all CI workflow providers.
30+
- A secure, pull-based mechanism, operating with least amount of privileges, and adhering to Kubernetes security policies.
31+
- Compatibility with any conformant Kubernetes version and common ecosystem technologies such as Helm, Kustomize, RBAC, Prometheus, OPA, Kyverno, etc.
32+
- Multitenancy, multiple Git repositories, multiple clusters.
33+
- Alerts and notifications.
2634

2735
### Manage and view applications all in one place.
2836

2937
![Application Page](./doc/img/01-workloads.png)
3038

31-
### Easily see your continuous deployments and what is being produced via GitOps. There are multiple views for debugging as well as being able to sync your latest git commits directly from the UI.
39+
### Easily see your continuous deployments and what is being produced via GitOps. There are multiple views for debugging as well as being able to sync your latest Git commits directly from the UI.
3240

3341
![Reconciliation Page](./doc/img/02-workload-detail.png)
3442

35-
### Leverage Kubernetes RBAC to control permissions in the dashboard.
43+
### Check out the Graph view.
44+
45+
![Graph View](./doc/img/03-graph.png)
46+
47+
### Review the yaml file.
3648

37-
![Source Page](./doc/img/03-rbac.jpg)
49+
![Yaml View](./doc/img/04-yaml.png)
3850

3951
### See your entire source landscape whether it is a git repository, helm repository, or bucket.
4052

41-
![Flux Runtime](./doc/img/04-sources.jpg)
53+
![Sources view](./doc/img/05-sources.png)
4254

4355
### Quickly see the health of your reconciliation deployment runtime. These are the workers that are ensuring your software is running on the Kubernetes cluster.
4456

45-
![Flux Runtime](./doc/img/05-runtime.jpg)
57+
![Flux Runtime](./doc/img/06-runtime.png)
4658

4759
## Getting Started
4860

doc/img/01-workloads.png

-183 KB
Loading

doc/img/02-workload-detail.png

-235 KB
Loading

doc/img/03-graph.png

396 KB
Loading

doc/img/03-rbac.jpg

-156 KB
Binary file not shown.

doc/img/04-sources.jpg

-265 KB
Binary file not shown.

doc/img/04-yaml.png

457 KB
Loading

doc/img/05-runtime.jpg

-127 KB
Binary file not shown.

doc/img/05-sources.png

198 KB
Loading

doc/img/06-runtime.png

274 KB
Loading

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -100,10 +100,10 @@
100100
"@types/react-dom": "^17.0.5",
101101
"@types/react-router-dom": "^5.1.6",
102102
"@types/styled-components": "^5.1.9",
103-
"@typescript-eslint/eslint-plugin": "^4.33.0",
104-
"@typescript-eslint/parser": "^4.33.0",
103+
"@typescript-eslint/eslint-plugin": "^6.6.0",
104+
"@typescript-eslint/parser": "^6.6.0",
105105
"buffer": "^5.7.1",
106-
"eslint": "^7.28.0",
106+
"eslint": "^8.48.0",
107107
"eslint-plugin-import": "^2.25.4",
108108
"jest": "^27.3.1",
109109
"jest-styled-components": "^7.0.4",
@@ -112,7 +112,7 @@
112112
"process": "^0.11.10",
113113
"react-test-renderer": "^17.0.2",
114114
"ts-jest": "^27.1.1",
115-
"typescript": "4.9.3",
115+
"typescript": "^5.2.2",
116116
"yarn-audit-fix": "^10.0.1"
117117
},
118118
"alias": {

ui/components/DataTable/DataTable.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import * as React from "react";
1313
import { useHistory, useLocation } from "react-router-dom";
1414
import styled from "styled-components";
1515
import { ThemeTypes } from "../../contexts/AppContext";
16+
import { SearchedNamespaces } from "../../lib/types";
1617
import { IconButton } from "../Button";
1718
import CheckboxActions from "../CheckboxActions";
1819
import ChipGroup from "../ChipGroup";
@@ -23,12 +24,10 @@ import FilterDialog, {
2324
} from "../FilterDialog";
2425
import Flex from "../Flex";
2526
import Icon, { IconType } from "../Icon";
27+
import InfoModal from "../InfoModal";
2628
import SearchField from "../SearchField";
2729
import Spacer from "../Spacer";
2830
import Text from "../Text";
29-
import InfoModal from "../InfoModal";
30-
import { SearchedNamespaces } from "../../lib/types";
31-
import SortableLabel from "./SortableLabel";
3231
import {
3332
filterRows,
3433
filterSelectionsToQueryString,
@@ -38,6 +37,7 @@ import {
3837
sortByField,
3938
toPairs,
4039
} from "./helpers";
40+
import SortableLabel from "./SortableLabel";
4141
import { Field, FilterState } from "./types";
4242

4343
/** DataTable Properties */

ui/components/Icon.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ import LogoutIcon from "@material-ui/icons/ExitToApp";
1414
import FileCopyIcon from "@material-ui/icons/FileCopyOutlined";
1515
import FilterIcon from "@material-ui/icons/FilterList";
1616
import HourglassFullIcon from "@material-ui/icons/HourglassFull";
17+
import InfoIcon from "@material-ui/icons/Info";
1718
import KeyboardArrowDownIcon from "@material-ui/icons/KeyboardArrowDown";
1819
import KeyboardArrowRightIcon from "@material-ui/icons/KeyboardArrowRight";
19-
import InfoIcon from "@material-ui/icons/Info";
2020
import LaunchIcon from "@material-ui/icons/Launch";
2121
import NavigateBeforeIcon from "@material-ui/icons/NavigateBefore";
2222
import NavigateNextIcon from "@material-ui/icons/NavigateNext";

ui/components/NotificationsTable.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ import DataTable, {
1212
} from "./DataTable";
1313
import Flex from "./Flex";
1414
import KubeStatusIndicator from "./KubeStatusIndicator";
15-
import MessageBox from "./MessageBox";
1615
import Link from "./Link";
16+
import MessageBox from "./MessageBox";
1717
import Spacer from "./Spacer";
1818
import Text from "./Text";
1919

ui/components/Policies/PolicyList/PolicyTable.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
import React, { FC } from "react";
22
import { useFeatureFlags } from "../../../hooks/featureflags";
3+
import { PolicyObj as Policy } from "../../../lib/api/core/core.pb";
34
import { formatURL } from "../../../lib/nav";
45
import { V2Routes } from "../../../lib/types";
56
import DataTable, { filterConfig } from "../../DataTable";
67
import Link from "../../Link";
78
import Text from "../../Text";
9+
import Timestamp from "../../Timestamp";
810
import PolicyMode from "../Utils/PolicyMode";
911
import Severity from "../Utils/Severity";
10-
import { PolicyObj as Policy } from "../../../lib/api/core/core.pb";
11-
import Timestamp from "../../Timestamp";
1212

1313
interface CustomPolicy extends Policy {
1414
audit?: string;

ui/components/Policies/PolicyViolations/PolicyViolationDetails.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
import React from "react";
22
import remarkGfm from "remark-gfm";
3-
import { PolicyValidation } from "../../../lib/api/core/core.pb";
4-
import Flex from "../../Flex";
5-
import Text from "../../Text";
6-
import Timestamp from "../../Timestamp";
73

84
import { AppContext } from "../../../contexts/AppContext";
95
import { useFeatureFlags } from "../../../hooks/featureflags";
6+
import { PolicyValidation } from "../../../lib/api/core/core.pb";
107
import { Kind } from "../../../lib/api/core/types.pb";
118
import { formatURL } from "../../../lib/nav";
129
import { FluxObject } from "../../../lib/objects";
1310
import { V2Routes } from "../../../lib/types";
1411
import ClusterDashboardLink from "../../ClusterDashboardLink";
12+
import Flex from "../../Flex";
1513
import Link from "../../Link";
14+
import Text from "../../Text";
15+
import Timestamp from "../../Timestamp";
1616
import HeaderRows, { RowItem } from "../Utils/HeaderRows";
1717
import { MarkdownEditor } from "../Utils/MarkdownEditor";
1818
import Parameters from "../Utils/Parameters";

ui/components/Policies/PolicyViolations/PolicyViolationPage.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ import React from "react";
22

33
import styled from "styled-components";
44
import { useGetPolicyValidationDetails } from "../../../hooks/policyViolations";
5+
import { PolicyValidation } from "../../../lib/api/core/core.pb";
56
import { Kind } from "../../../lib/api/core/types.pb";
67
import { formatURL } from "../../../lib/nav";
8+
import { FluxObject } from "../../../lib/objects";
79
import { V2Routes } from "../../../lib/types";
810
import Page from "../../Page";
911

10-
import { PolicyValidation } from "../../../lib/api/core/core.pb";
11-
import { FluxObject } from "../../../lib/objects";
1212
import { ViolationDetails } from "./PolicyViolationDetails";
1313

1414
const getPath = (kind: string, violation?: PolicyValidation) => {

ui/components/Policies/PolicyViolations/Table/index.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
import React from "react";
2+
import { useFeatureFlags } from "../../../../hooks/featureflags";
23
import { useListPolicyValidations } from "../../../../hooks/policyViolations";
34
import { ListPolicyValidationsRequest } from "../../../../lib/api/core/core.pb";
5+
import { Kind } from "../../../../lib/api/core/types.pb";
46
import { formatURL } from "../../../../lib/nav";
57
import { V2Routes } from "../../../../lib/types";
68
import DataTable, { Field, filterConfig } from "../../../DataTable";
79
import Link from "../../../Link";
810
import RequestStateHandler from "../../../RequestStateHandler";
11+
import Text from "../../../Text";
912
import Timestamp from "../../../Timestamp";
1013
import Severity from "../../Utils/Severity";
11-
import { useFeatureFlags } from "../../../../hooks/featureflags";
12-
import { Kind } from "../../../../lib/api/core/types.pb";
13-
import Text from "../../../Text";
1414

1515
interface Props {
1616
req: ListPolicyValidationsRequest;

ui/components/Policies/__tests__/Severity.test.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { render } from "@testing-library/react";
22
import React from "react";
3-
import Severity from "../Utils/Severity";
43
import { withTheme } from "../../../lib/test-utils";
4+
import Severity from "../Utils/Severity";
55

66
function checkSeverity(severity: string) {
77
render(withTheme(<Severity severity={severity} />));

ui/components/__tests__/Link.test.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1+
import { render } from "@testing-library/react";
12
import React from "react";
23
import { MemoryRouter } from "react-router-dom";
3-
import { render } from "@testing-library/react";
44
import { withTheme } from "../../lib/test-utils";
55
import Link from "../Link";
66

ui/contexts/CoreClientContext.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import qs from "query-string";
22
import * as React from "react";
33
import { useQuery } from "react-query";
44
import { Core, GetFeatureFlagsResponse } from "../lib/api/core/core.pb";
5-
import { RequestError } from "../lib/types";
65
import { TokenRefreshWrapper } from "../lib/requests";
6+
import { RequestError } from "../lib/types";
77
import { AuthRoutes } from "./AuthContext";
88

99
type Props = {

ui/hooks/Policies.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ import { useContext } from "react";
22
import { useQuery } from "react-query";
33

44
import { CoreClientContext } from "../contexts/CoreClientContext";
5-
import { ReactQueryOptions, RequestError } from "../lib/types";
65
import {
76
ListPoliciesRequest,
87
ListPoliciesResponse,
98
GetPolicyRequest,
109
GetPolicyResponse,
1110
} from "../lib/api/core/core.pb";
11+
import { ReactQueryOptions, RequestError } from "../lib/types";
1212

1313
const LIST_POLICIES_QUERY_KEY = "list-policy";
1414

ui/hooks/policyViolations.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ import { useContext } from "react";
22
import { useQuery } from "react-query";
33

44
import { CoreClientContext } from "../contexts/CoreClientContext";
5-
import { ReactQueryOptions, RequestError } from "../lib/types";
65
import {
76
GetPolicyValidationRequest,
87
GetPolicyValidationResponse,
98
ListPolicyValidationsRequest,
109
ListPolicyValidationsResponse,
1110
} from "../lib/api/core/core.pb";
11+
import { ReactQueryOptions, RequestError } from "../lib/types";
1212

1313
const LIST_POLICY_VIOLATION_QUERY_KEY = "list-policy-violations";
1414

ui/lib/__tests__/graph.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import _ from "lodash";
2+
import { pod, rs } from "../__fixtures__/graph";
23
import { Core, GetChildObjectsResponse } from "../api/core/core.pb";
34
import { Kind } from "../api/core/types.pb";
45
import { getChildren } from "../graph";
56
import { createCoreMockClient } from "../test-utils";
6-
import { pod, rs } from "../__fixtures__/graph";
77

88
describe("graph lib", () => {
99
let client: typeof Core;

ui/lib/__tests__/objects.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { Kind } from "../api/core/types.pb";
21
import { pod, rs } from "../__fixtures__/graph";
2+
import { Kind } from "../api/core/types.pb";
33
import {
44
Bucket,
55
FluxObject,

ui/lib/objects.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ import {
88
Interval,
99
Kind,
1010
NamespacedObjectReference,
11-
Object as ResponseObject,
1211
ObjectRef,
12+
Object as ResponseObject,
1313
} from "./api/core/types.pb";
1414
export type Automation = HelmRelease | Kustomization;
1515
export type Source =
@@ -342,7 +342,7 @@ export class ImagePolicy extends ImageUpdateAutomation {
342342
super(response);
343343
}
344344
get imagePolicy(): ImgPolicy {
345-
const { policy } = this.obj?.spec;
345+
const { policy } = this.obj?.spec || {};
346346
const [type] = Object.keys(policy);
347347
if (type) {
348348
const [val] = Object.values(policy[type]);

ui/pages/Error.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import * as React from "react";
22
import styled from "styled-components";
3-
import Content from "../components/Page";
43
import Flex from "../components/Flex";
4+
import Content from "../components/Page";
55

66
type Props = {
77
className?: string;

ui/pages/v2/UserInfo.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import * as React from "react";
2-
import { Auth } from "../../contexts/AuthContext";
32
import Page from "../../components/Page";
43
import UserGroupsTable from "../../components/UserGroupsTable";
4+
import { Auth } from "../../contexts/AuthContext";
55
type Props = {
66
className?: string;
77
};

website/versioned_docs/version-0.24.0/cluster-management/getting-started.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import BrowserOnly from "@docusaurus/BrowserOnly";
1111

1212
## Creating your first CAPD Cluster
1313

14-
If you've followed the [Installation guide](installation/weave-gitops-enterprise/index.mdx) you should have:
14+
If you've followed the [Installation guide](../enterprise/getting-started/install-enterprise.mdx) you should have:
1515

1616
1. Weave GitOps Enterprise installed
1717
2. A CAPI provider installed (With support for `ClusterResourceSet`s enabled).

website/versioned_docs/version-0.24.0/installation/aws-marketplace.mdx renamed to website/versioned_docs/version-0.24.0/enterprise/getting-started/aws-marketplace.mdx

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
---
22
title: AWS Marketplace
33
hide_title: true
4-
pagination_next: getting-started/ui
54
---
65

76
import Tabs from "@theme/Tabs";
@@ -200,7 +199,3 @@ flux-system ww-gitops-weave-gitops-5bdc9f7744-vkh65 1/1
200199
```
201200

202201
Your Weave GitOps installation is now ready!
203-
204-
## Next steps
205-
206-
In our following [Get Started document](../getting-started/ui.mdx), we will walk you through logging into the GitOps Dashboard and deploying an application.

website/versioned_docs/version-0.24.0/installation/weave-gitops-enterprise/airgap.mdx renamed to website/versioned_docs/version-0.24.0/enterprise/getting-started/install-enterprise-airgap.mdx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,9 @@
22
title: Airgap Environments
33
hide_title: true
44
toc_max_heading_level: 4
5-
pagination_next: getting-started/ui
65
---
76

8-
import TierLabel from "../../_components/TierLabel";
7+
import TierLabel from "@site/docs/_components/TierLabel";
98

109
# Install in Airgap Environments <TierLabel tiers="Enterprise" />
1110

0 commit comments

Comments
 (0)