Merge ~mthaddon/charm-k8s-discourse/+git/charm-k8s-discourse:end-user into charm-k8s-discourse:master

Proposed by Tom Haddon
Status: Merged
Approved by: Tom Haddon
Approved revision: 2a8748eb54369e211afb4111f308a57224bca11d
Merged at revision: cc4553c41673554e0885620c0213d20989c99e69
Proposed branch: ~mthaddon/charm-k8s-discourse/+git/charm-k8s-discourse:end-user
Merge into: charm-k8s-discourse:master
Diff against target: 126 lines (+21/-78)
2 files modified
README.md (+15/-75)
metadata.yaml (+6/-3)
Reviewer Review Type Date Requested Status
Laurent Sesquès Approve
Canonical IS Reviewers Pending
Review via email: mp+395296@code.launchpad.net

Commit message

Update README and relevant metadata.yaml fields to be more end-user focused

Description of the change

Update README and relevant metadata.yaml fields to be more end-user focused

To post a comment you must log in.
Revision history for this message
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote :

This merge proposal is being monitored by mergebot. Change the status to Approved to merge.

Revision history for this message
Laurent Sesquès (sajoupa) :
review: Approve
Revision history for this message
🤖 Canonical IS Merge Bot (canonical-is-mergebot) wrote :

Change successfully merged at revision cc4553c41673554e0885620c0213d20989c99e69

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/README.md b/README.md
2index 0167267..aaacc47 100644
3--- a/README.md
4+++ b/README.md
5@@ -1,16 +1,20 @@
6-# Discourse Charm
7+# Discourse Operator
8
9-## Overview
10+A juju charm deploying and managing Discourse on Kubernetes, configurable to
11+use a PostgreSQL backend.
12
13-This charm deploys the Discourse discussion forum. Discourse is the 100% open
14-source discussion platform built for the next decade of the Internet. Use it
15-as a mailing list, discussion forum, long-form chat room, and more!
16+## Overview
17
18-This is a k8s workload charm and can only be deployed to to a Juju k8s
19-cloud, attached to a controller using `juju add-k8s`.
20+Supported features include SAML authentication, scaling to multiple pods and the
21+storage of files and images in S3. This charm also offers seamless Discourse
22+version upgrades, initiated by switching to an image with a newer version of
23+Discourse than the one currently deployed.
24
25 ## Usage
26
27+For details on using Kubernetes with Juju [see here](https://juju.is/docs/kubernetes), and for
28+details on using Juju with MicroK8s for easy local testing [see here](https://juju.is/docs/microk8s-cloud).
29+
30 To get started with a test environment, first deploy Redis in an IaaS model:
31
32 juju deploy cs:~redis-charmers/redis # Note the deployed IP as ${REDIS_IP}
33@@ -28,72 +32,8 @@ as follows:
34 juju add-relation discourse postgresql:db-admin
35 juju expose discourse
36
37-### Static content and uploads
38-
39-Discourse supports post uploads. When using this charm you need to make
40-use of the S3 storage option built in to discourse for file uploads.
41-
42-You do this by accessing the Files option in the discourse settings
43-web admin panel. Enter your S3 options here and check the 'enable s3
44-uploads' option. This will push any uploads made into the S3 system and
45-will serve them from there as well, eliminating the need for any persistent
46-local storage.
47-
48-### Developing
49-
50-Notes for deploying a test setup locally using MicroK8s:
51-
52- sudo snap install juju --classic
53- sudo snap install juju-wait --classic
54- sudo snap install microk8s --classic
55- sudo snap alias microk8s.kubectl kubectl
56- sudo snap install charmcraft
57- git clone https://git.launchpad.net/charm-k8s-discourse
58- cd charm-k8s-discourse
59- make discourse.charm
60-
61- microk8s.reset # Warning! Clean slate!
62- microk8s.enable dns dashboard registry storage
63- microk8s.status --wait-ready
64- microk8s.config | juju add-k8s myk8s --client
65-
66- # Build your Discourse image
67- make build-image
68- docker push localhost:32000/discourse
69-
70- juju bootstrap myk8s
71- juju add-model discourse-test
72- juju deploy ./discourse.charm --config discourse_image=localhost:32000/discourse:latest discourse
73- juju wait
74- juju status
75-
76-The charm will not function without a database, so you will need to
77-deploy `cs:postgresql` somewhere. You will also need a Redis application
78-to connect to, such as `cs:~redis-charmers/redis`.
79-
80-If PostgreSQL is deployed in the same model you plan to use for
81-Discourse, simply use `juju relate discourse postgresql:db-admin`. (This
82-deployment style is recommended for testing purposes only.)
83-
84-Cross-model relations are also supported. Create a suitable model on
85-a different cloud, for example, LXD or OpenStack.
86-
87- juju switch database
88- juju deploy cs:postgresql
89- juju deploy cs:~redis-charmers/redis # Use the IP address for the `redis_host` config option to discourse
90- juju offer postgresql:db-admin
91-
92-In most k8s deployments, traffic to external services from worker pods
93-will be SNATed by some part of the infrastructure. You will need to
94-know what the source addresses or address range is for the next step.
95-
96- juju switch discourse-test
97- juju find-offers # note down offer URL; example used below:
98- juju relate discourse admin/database.postgresql --via 10.9.8.0/24
99-
100-(In the case of PostgreSQL, `--via` is needed so that the charm can
101-configure `pga_hba.conf` to let the k8s pods connect to the database.)
102-
103-## Testing
104+Once the deployment is completed and the "discourse" workload state in `juju
105+status` has changed to "active" you can visit http://{$discourse_ip}:3000 in a
106+browser and log in to your Discourse instance.
107
108-Just run `make test`.
109+For further details, [see here](https://charmhub.io/discourse/docs).
110diff --git a/metadata.yaml b/metadata.yaml
111index 4c3e926..82e1aa8 100644
112--- a/metadata.yaml
113+++ b/metadata.yaml
114@@ -1,6 +1,9 @@
115-name: "discourse"
116-summary: "Discourse for juju-k8s operator framework"
117-description: "Discourse bundled for juju-k8s deployment"
118+name: discourse
119+summary: Discourse is the 100% open source discussion platform built for the next decade of the Internet.
120+description: |
121+ Discourse is the 100% open source discussion platform built for the next decade of the Internet.
122+ Use it as a mailing list, discussion forum, long-form chat room and more!
123+ https://www.discourse.org
124 docs: https://discourse.charmhub.io/t/discourse-documentation-overview/3773
125 maintainers:
126 - Jay Kuri <jay.kuri@canonical.com>

Subscribers

People subscribed via source and target branches