Skip to content

Commit b4e644a

Browse files
authored
Fix broken URLs and spelling errors (#993)
* add starter pack and sync tutorial with VM * update deployment guides * rename how-to-guides to how-to * sync how-to guides with vm * sync references with vm * sync explanation pages with vm * add .readthedocs.yaml and reduce .gitignore scope for requirements.txt file * fix some formatting issues * sync backup guides with vm * fix misc. build errors and sync tutorial with vm * add doc ci checks * remove discourse sync workflow * polish tutorial and deploy guide * specify channel on all deploy commands * sync misc. pages with vm * minor README update with new documentation link * ignore docs folder in development workflows * remove sphinx python dependency check workflow * update home page * fix some broken links * fix broken links * fix spelling errors in docs * fix spelling errors in other markdown files * small spelling fix
1 parent a6fb522 commit b4e644a

Some content is hidden

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

49 files changed

+273
-183
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ labels: bug
1111
<!-- Please enable debug logging by running `juju model-config logging-config="<root>=INFO;unit=DEBUG"` (if possible) -->
1212
1.
1313

14-
## Expected behavior
14+
## Expected behaviour
1515

1616

17-
## Actual behavior
17+
## Actual behaviour
1818
<!-- If applicable, add screenshots -->
1919

2020

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ this operator.
88
- Generally, before developing enhancements to this charm, you should consider [opening an issue
99
](https://github.com/canonical/postgresql-k8s-operator/issues) explaining your use case.
1010
- If you would like to chat with us about your use-cases or proposed implementation, you can reach
11-
us at [public Canonical Data Platform channel](https://chat.charmhub.io/charmhub/channels/data-platform)
11+
us at [our public Mattermost channel](https://matrix.to/#/#charmhub-data-platform:ubuntu.com)
1212
or [Discourse](https://discourse.charmhub.io/).
13-
- Familiarising yourself with the [Charmed Operator Framework](https://juju.is/docs/sdk) library
13+
- Familiarising yourself with the [Charmed Operator Framework](https://ops.readthedocs.io/en/latest/index.html) library
1414
will help you a lot when working on new features or bug fixes.
1515
- All enhancements require review before being merged. Code review typically examines
1616
- code quality

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ For more information, see the [Security policy](SECURITY.md).
104104

105105
## Contributing
106106

107-
Please see the [Juju SDK docs](https://juju.is/docs/sdk) for guidelines on enhancements to this charm following best practice guidelines, and [CONTRIBUTING.md](https://github.com/canonical/postgresql-k8s-operator/blob/main/CONTRIBUTING.md) for developer guidance.
107+
Please see the [Juju SDK docs](https://documentation.ubuntu.com/juju/3.6/) for guidelines on enhancements to this charm following best practice guidelines, and [CONTRIBUTING.md](https://github.com/canonical/postgresql-k8s-operator/blob/main/CONTRIBUTING.md) for developer guidance.
108108

109109
## License
110110

SECURITY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
## What qualifies as a security issue
44

55
Credentials leakage, outdated dependencies with known vulnerabilities, and
6-
other issues that could lead to unprivileged or unauthorized access to the
6+
other issues that could lead to unprivileged or unauthorised access to the
77
database or the system.
88

99
## Reporting a vulnerability

docs/.custom_wordlist.txt

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,138 @@
11
# Leave a blank line at the end of this file to support concatenation
2+
airgap
3+
analyze
4+
artifact
5+
Artifactory
6+
artifacts
7+
async
8+
aws
9+
AWS
10+
AZ
11+
AZs
212
backend
313
backends
14+
balancer
15+
balancers
16+
benchmark
17+
benchmarking
18+
CharmBase
419
Charmcraft
20+
charmhub
21+
checksum
22+
checksums
23+
CIS
524
cjk
25+
config
26+
configs
627
cryptographically
28+
CSR
29+
CSRs
30+
databag
31+
databags
32+
dev
733
dvipng
34+
eks
35+
EKS
36+
entrypoint
37+
failover
38+
filesystem
39+
filesystems
840
fonts
941
freefont
42+
gapped
43+
gce
44+
GCE
45+
gcloud
46+
GCloud
47+
GCP
1048
github
49+
GLAuth
1150
GPG
1251
gyre
52+
HLD
53+
hostname
54+
hostnames
1355
https
56+
IAAS
57+
integration
58+
integrations
1459
Intersphinx
60+
io
61+
IPv
62+
Jira
63+
jitter
64+
Juju
1565
lang
1666
LaTeX
1767
latexmk
68+
LDAP
69+
libs
70+
lifecycle
71+
MinIO
1872
Multipass
73+
nameserver
74+
nameservers
75+
Nextcloud
1976
otf
77+
Parca
78+
Patroni
79+
Patroni*
80+
pgbackrest
81+
pgBackRest
82+
pgbouncer
83+
Pgbouncer*
84+
pgsql
85+
PITR
2086
plantuml
2187
PNG
88+
pooler
89+
postgres
90+
postgresql
91+
pqsql
92+
PVCs
93+
py
2294
Pygments
2395
QEMU
96+
RadosGW
97+
requirer
98+
rockcraft
2499
Rockcraft
25100
rst
101+
scalable
102+
sdk
103+
SHA
104+
snap
105+
snapcraft
106+
SquashFS
107+
src
108+
SSL
109+
stateful
26110
SVG
111+
Sysbench
112+
terraform
27113
tex
28114
texlive
29115
TOC
30116
toctree
31117
txt
118+
ubuntu
32119
uncommenting
120+
uncordon
33121
utils
122+
vm
34123
VMs
124+
WAL
125+
walkthrough
35126
WCAG
36127
whitespace
37128
whitespaces
38129
wordlist
39130
xetex
131+
XID
40132
xindy
133+
yaml
134+
PPA
135+
PPAs
136+
programmatically
137+
codebase
138+
Juju's

docs/explanation/architecture.md

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
## Juju K8s concept
88

9-
The charm design leverages the [sidecar](https://kubernetes.io/blog/2015/06/the-distributed-system-toolkit-patterns/#example-1-sidecar-containers) pattern to allow multiple containers in each pod with [Pebble](https://juju.is/docs/sdk/pebble) running as the workload container’s entrypoint.
9+
The charm design leverages the [sidecar](https://kubernetes.io/blog/2015/06/the-distributed-system-toolkit-patterns/#example-1-sidecar-containers) pattern to allow multiple containers in each pod with [Pebble](https://documentation.ubuntu.com/juju/3.6/reference/pebble/) running as the workload container’s entrypoint.
1010

1111
Pebble is a lightweight, API-driven process supervisor that is responsible for configuring processes to run in a container and controlling those processes throughout the workload lifecycle.
1212

@@ -28,23 +28,23 @@ And if you run `kubectl describe pod postgresql-k8s-0`, all the containers will
2828

2929
## HLD (High Level Design)
3030

31-
The Charmed PostgreSQL K8s (`workload` container) based on `postgresql-image` resource defined in the [charm metadata.yaml](https://github.com/canonical/postgresql-k8s-operator/blob/main/metadata.yaml). It is an official Canonical [charmed-postgresql](https://github.com/canonical/charmed-postgresql-rock) [OCI/Rock](https://ubuntu.com/server/docs/rock-images/introduction) image, which is recursively based on the Canonical [`charmed-postgresql` snap].
31+
The Charmed PostgreSQL K8s (`workload` container) based on `postgresql-image` resource defined in the [charm metadata.yaml](https://github.com/canonical/postgresql-k8s-operator/blob/main/metadata.yaml). It is an official Canonical [charmed-postgresql](https://github.com/canonical/charmed-postgresql-rock) [OCI/Rock](https://documentation.ubuntu.com/rockcraft/en/latest/explanation/rockcraft/) image, which is based on the Canonical [`charmed-postgresql` snap].
3232

33-
[Charmcraft](https://juju.is/docs/sdk/install-charmcraft) uploads an image as a [charm resource](https://charmhub.io/postgresql-k8s/resources/postgresql-image) to [Charmhub](https://charmhub.io/postgresql-k8s) during the [publishing](https://github.com/canonical/postgresql-k8s-operator/blob/main/.github/workflows/release.yaml), as described in the [Juju SDK How-to guides](https://juju.is/docs/sdk/publishing).
33+
[Charmcraft](https://canonical-charmcraft.readthedocs-hosted.com/stable/) uploads an image as a [charm resource](https://charmhub.io/postgresql-k8s/resources/postgresql-image) to [Charmhub](https://charmhub.io/postgresql-k8s) during the [publishing](https://github.com/canonical/postgresql-k8s-operator/blob/main/.github/workflows/release.yaml).
3434

35-
The charm supports Juju deploymed to all Kubernetes environments: [MicroK8s](https://microk8s.io/), [Charmed Kubernetes](https://ubuntu.com/kubernetes/charmed-k8s), [GKE](https://charmhub.io/postgresql-k8s/docs/h-deploy-gke), [Amazon EKS](https://aws.amazon.com/eks/), ...
35+
The charm supports Juju deployment on all Kubernetes environments: [MicroK8s](https://microk8s.io/), [Charmed Kubernetes](https://ubuntu.com/kubernetes/charmed-k8s), [GKE](/how-to/deploy/gke), [Amazon EKS](/how-to/deploy/aks)...
3636

3737
The OCI/Rock ships the following components:
3838

3939
* PostgreSQL Community Edition (based on [`charmed-postgresql` snap])
4040
* Patroni (based on [`charmed-postgresql` snap])
4141
* PgBouncer (based on [`charmed-postgresql` snap])
42-
* pgBackRest (based on [`charmed-postgresql` snap])
42+
* PgBackRest (based on [`charmed-postgresql` snap])
4343
* Prometheus PostgreSQL Exporter (based on [`charmed-postgresql` snap])
4444
* Prometheus PgBouncer Exporter (based on [`charmed-postgresql` snap])
4545
* Prometheus Grafana dashboards and Loki alert rules are part of the charm revision (and missing in SNAP).
4646

47-
SNAP-based rock images guarantee the same components versions and functionality between VM and K8s charm flavors.
47+
SNAP-based rock images guarantee the same components versions and functionality between VM and K8s charm flavours.
4848

4949
Pebble runs layers of all the currently enabled services, e.g. monitoring, backups, etc:
5050
```text
@@ -84,7 +84,7 @@ The rock "charmed-postgresql" also ships list of tools used by charm:
8484

8585
### Data Integrator
8686

87-
[Data Integrator](https://charmhub.io/data-integrator) charm is a solution to request DB credentials for non-native Juju applications. Not all applications implement a data_interfaces relation but allow setting credentials via config. Also, some of the applications are run outside of juju. This integrator charm allows receiving credentials which can be passed into application config directly without implementing juju-native relation.
87+
[Data Integrator](https://charmhub.io/data-integrator) charm is a solution to request DB credentials for non-native Juju applications. Not all applications implement a data_interfaces relation but allow setting credentials via config. Also, some of the applications are run outside of juju. This integrator charm allows receiving credentials which can be passed into application configuration directly without implementing juju-native relation.
8888

8989
### PostgreSQL Test App
9090

@@ -96,7 +96,7 @@ GLAuth is a secure, easy-to-use and open-sourced LDAP server which provides capa
9696

9797
### Grafana
9898

99-
Grafana is an open-source visualization tools that allows to query, visualize, alert on, and visualize metrics from mixed datasources in configurable dashboards for observability. This charms is shipped with its own Grafana dashboard and supports integration with the [Grafana Operator](https://charmhub.io/grafana-k8s) to simplify observability. Please follow [COS Monitoring](/how-to/monitoring-cos/enable-monitoring) setup.
99+
Grafana is an open-source visualisation tools that allows to query, visualise, alert on, and visualise metrics from mixed data sources in configurable dashboards for observability. This charms is shipped with its own Grafana dashboard and supports integration with the [Grafana Operator](https://charmhub.io/grafana-k8s) to simplify observability. Please follow [COS Monitoring](/how-to/monitoring-cos/enable-monitoring) setup.
100100

101101
### Loki
102102

@@ -108,33 +108,32 @@ Prometheus is an open-source systems monitoring and alerting toolkit with a dime
108108

109109
## LLD (Low Level Design)
110110

111-
Please check the charm state machines displayed on [workflow diagrams](/explanation/flowcharts/charm). The low-level logic is mostly common for both VM and K8s charm flavors.
111+
Please check the charm state machines displayed on [workflow diagrams](/explanation/flowcharts/charm). The low-level logic is mostly common for both VM and K8s charm flavours.
112112

113113
<!--- TODO: Describe all possible installations? Cross-model/controller? --->
114114

115-
### Juju Events
115+
### Juju events
116116

117-
Accordingly to the [Juju SDK](https://juju.is/docs/sdk/event): “an event is a data structure that encapsulates part of the execution context of a charm.
117+
An event is a data structure that encapsulates part of the execution context of a charm.
118118

119119
For this charm, the following events are observed:
120120

121-
1. [postgresql_pebble_ready](https://juju.is/docs/sdk/container-name-pebble-ready-event): informs charm about the availability of the rock "charmed-postgresql"-based `workload` K8s container. Also performs basic preparations to bootstrap the cluster on the first leader (or join the already configured cluster).
122-
2. [leader-elected](https://juju.is/docs/sdk/leader-elected-event): generate all the secrets to bootstrap the cluster.
123-
5. [config_changed](https://juju.is/docs/sdk/config-changed-event): usually fired in response to a configuration change using the GUI or CLI. Create and set default cluster and cluster-set names in the peer relation databag (on the leader only).
124-
6. [update-status](https://juju.is/docs/sdk/update-status-event): Takes care of workload health checks.
121+
1. [postgresql_pebble_ready](https://documentation.ubuntu.com/juju/3.6/reference/hook/#container-pebble-ready): informs charm about the availability of the rock "charmed-postgresql"-based `workload` K8s container. Also performs basic preparations to bootstrap the cluster on the first leader (or join the already configured cluster).
122+
2. [leader-elected](https://documentation.ubuntu.com/juju/3.6/reference/hook/#leader-elected): generate all the secrets to bootstrap the cluster.
123+
5. [config_changed](https://documentation.ubuntu.com/juju/3.6/reference/hook/#config-changed): usually fired in response to a configuration change using the GUI or CLI. Create and set default cluster and cluster-set names in the peer relation databag (on the leader only).
124+
6. [update-status](https://documentation.ubuntu.com/juju/3.6/reference/hook/#update-status): Takes care of workload health checks.
125125
<!--- 7. database_storage_detaching: TODO: ops? event?
126-
8. TODO: any other events? relation_joined/changed/created/broken
126+
1. TODO: any other events? relation_joined/changed/created/broken
127127
--->
128128

129129
### Charm Code Overview
130130

131131
The "[src/charm.py](https://github.com/canonical/postgresql-k8s-operator/blob/main/src/charm.py)" is the default entry point for a charm and has the `PostgresqlOperatorCharm` Python class which inherits from CharmBase.
132132

133-
CharmBase is the base class from which all Charms are formed, defined by [Ops](https://juju.is/docs/sdk/ops) (Python framework for developing charms). See more information in [Charm](https://juju.is/docs/sdk/constructs#charm).
134-
133+
CharmBase is the base class from which all Charms are formed, defined by [Ops](https://ops.readthedocs.io/en/latest/index.html) (Python framework for developing charms).
135134
The `__init__` method guarantees that the charm observes all events relevant to its operation and handles them.
136135

137-
The VM and K8s charm flavors shares the codebase via [charm libraries](https://juju.is/docs/sdk/libraries) in [lib/charms/postgresql_k8s/v0/](https://github.com/canonical/postgresql-k8s-operator/blob/main/lib/charms/postgresql_k8s/v0/postgresql.py) (of K8s flavor of the charm!):
136+
The VM and K8s charm flavours shares the codebase via charm libraries in [lib/charms/postgresql_k8s/v0/](https://github.com/canonical/postgresql-k8s-operator/blob/main/lib/charms/postgresql_k8s/v0/postgresql.py) (of K8s flavour of the charm!):
138137
```
139138
> charmcraft list-lib postgresql-k8s
140139
Library name API Patch

docs/explanation/connection-pooling.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ A way to achieve this with Charmed PostgreSQL K8s is by integrating with the [Pg
88

99
## Increasing maximum allowed connections
1010

11-
If using PgBouncer is not enough to handle the connections load of your application, you can increase the amount of connections that PostgreSQL can open via the [`experimental_max_connections` config parameter](https://charmhub.io/postgresql-k8s/configurations#experimental_max_connections).
11+
If using PgBouncer is not enough to handle the connections load of your application, you can increase the amount of connections that PostgreSQL can open via the [`experimental_max_connections` configuration parameter](https://charmhub.io/postgresql-k8s/configurations#experimental_max_connections).
1212

1313
```{caution}
1414
Each connection opened by PostgreSQL spawns a new process, which is resource-intensive. Use this option as a last resort.

docs/explanation/flowcharts/backups.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ flowchart TD
7171
```
7272

7373
## On `list-backups` hook
74-
[Click to navigate the mermaid diagram on GitHub](https://github.com/canonical/postgresql-k8s-operator/blob/main/docs/explanation/e-backups.md).
7574

7675
```{mermaid}
7776
flowchart TD
@@ -85,7 +84,6 @@ flowchart TD
8584
```
8685

8786
## On `restore` hook
88-
[Click to navigate the mermaid diagram on GitHub](https://github.com/canonical/postgresql-k8s-operator/blob/main/docs/explanation/e-backups.md).
8987

9088
```{mermaid}
9189
flowchart TD

docs/explanation/flowcharts/relations.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Relations flowcharts
22

3-
This reference documentation details the implementation of the `database-peers` peer relation. This is the peer relation for PostgreSQL, used to share user and config information from the leader unit to the follower units. The file implementing these relations can be found here: [src/relations/charm.py](https://github.com/canonical/postgresql-k8s-operator/blob/main/src/charm.py) (it should be moved to a file called `src/relations/peers.py` in the future).
3+
This reference documentation details the implementation of the `database-peers` peer relation. This is the peer relation for PostgreSQL, used to share user and configuration information from the leader unit to the follower units. The file implementing these relations can be found here: [src/relations/charm.py](https://github.com/canonical/postgresql-k8s-operator/blob/main/src/charm.py) (it should be moved to a file called `src/relations/peers.py` in the future).
44

55
## Expected interface
66

docs/explanation/juju.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[Juju](https://juju.is/) is an open source orchestration engine for software operators that enables the deployment, integration and lifecycle management of applications at any scale, on any infrastructure using charms.
44

5-
> See also: [Juju client documentation](https://juju.is/docs/juju), [Juju blog](https://ubuntu.com/blog/tag/juju)
5+
> See also: {{juju_documentation_url}}, [Juju blog](https://ubuntu.com/blog/tag/juju)
66
77
## Compatibility with PostgreSQL
88

@@ -26,7 +26,7 @@ In the context of this documentation, the pertinent changes are as follows:
2626
|`run`|`exec`|
2727
|`run-action --wait`|`run`|
2828

29-
See the [Juju 3.0 release notes](https://juju.is/docs/juju/roadmap#juju-3-0-0---22-oct-2022) for the comprehensive list of changes.
29+
See the [Juju 3.0 release notes](https://juju.is/docs/juju/roadmap) for the comprehensive list of changes.
3030

3131
Example substitutions:
3232

0 commit comments

Comments
 (0)