47 Commits

Author SHA1 Message Date
Eric Dobbs
bd2619a14b upgrade to wiki 0.24.0 1.0.10 2021-04-24 10:10:40 -06:00
Eric Dobbs
54f1c382f5 recent browsers do the right thing with *.localhost
with this update we can remove the last mention of localtest.me
2021-02-28 13:46:36 -07:00
Eric Dobbs
218128db23 Improve development docs
We've learned how to use kubectl patch for local testing

We've also abandoned the automation between github and dockerhub
because we publish updates with sufficient irregularity that it is
better if we take the steps more manually and verify each as we go.
1.0.9-prefer-title
2021-02-28 13:40:10 -07:00
Eric Dobbs
6f9ed1279c upgrade to wiki 0.23.0 + wiki-client 0.23.0 with feeling
previous attempt didn't actually install the new wiki-client
fixed the previous single & between cd and npm install --save
2021-02-28 13:30:18 -07:00
Eric Dobbs
2ff3dcad1e correct wiki-client version number 1.0.9-wiki-client-0.23.0 2021-02-28 09:57:40 -07:00
Eric Dobbs
eab72db590 Move release notes for 1.0.0 into its own file 1.0.9-wiki-client-v0.23.0 2021-02-28 09:31:17 -07:00
Eric Dobbs
04c3ba7fe1 upgrade wiki-client to v0.23.0 2021-02-28 09:19:18 -07:00
Eric Dobbs
8d7d0e5119 upgrade to wiki@0.23 1.0.8 2021-02-28 09:10:10 -07:00
Eric Dobbs
1cf4d8e6ae moved example k8s deployment .yaml to deploy.wiki.do 2021-01-18 00:10:15 -07:00
Eric Dobbs
2705d760bf rename default branch to main 1.0.7 2021-01-10 16:11:53 -07:00
Eric Dobbs
ad1c5af0d8 change domain names in kubernetes example to use localhost
Now that both chrome and firefox understand *.localhost domains we can
remove our suggestion of using localtest.me subdomains.

Also update the brew install instructions now that brew cask install
is deprecated in favor of brew install --cask

My favorite improvement is finding a way to use yaml block labels and
references to reduce the duplication in the ingress config.

I suppose the last important thing to mention about this changes is
that k3d seems to have switched from traefik to nginx for its ingress
loadbalancer. We no longer need the traefik annotation.
2021-01-10 16:05:24 -07:00
Eric Dobbs
b2b868f0be upgrade to wiki@0.22 2021-01-10 15:59:46 -07:00
Eric Dobbs
aa23f2f9b3 version 1.0.6 1.0.6 2020-08-29 12:44:03 -06:00
Eric Dobbs
517e7b3e6a Upgrade to wiki 0.21.2 2020-08-29 12:42:28 -06:00
Eric Dobbs
d5b43b160a add NPM_CONFIG_PREFIX environment variable
Should remove one step from the instructions for developing plugins.
It's a step I consistently miss in my haste to get on with the hacking
and don't notice myself skip.
2020-08-29 12:37:30 -06:00
Eric Dobbs
f94133b505 bump to wiki-client@0.20.1 and wiki-server@0.17.5 1.0.4 2020-04-19 17:35:00 -06:00
Eric Dobbs
60c869a141 Anticipating next wiki release with updates to wiki-client & -server 1.0.3 2020-02-17 09:55:38 -07:00
Eric Dobbs
347dff8ea8 Clarify our use versions and improve guidance for tagging
git push --tags sends all the tags to the server.
git push origin <tag> sends only the new tag to the server.
1.0.2
2020-02-06 09:08:06 -07:00
Eric Dobbs
82dacc05d9 Upgrade to wiki 0.21.0 2020-02-06 08:56:49 -07:00
Eric Dobbs
f67be8dbb8 Install and unseal vault for experiments with secrets management 2020-01-20 00:19:05 -07:00
Eric Dobbs
c4bd44f3f4 Provide example farm configuration for friends security plugin 2020-01-19 15:22:03 -07:00
Eric Dobbs
9d83a6768d Ensure localhost is included in k8s cluster TLS cert
See explanation here:
https://github.com/rancher/k3d/issues/143\#issuecomment-552634281

--server-arg passes the --tls-san=... argument through to k3s server.
Docs for that arg are here:
https://rancher.com/docs/k3s/latest/en/installation/install-options/
2020-01-19 15:13:24 -07:00
Eric Dobbs
45dbb893d1 Simplest wiki command that could possibly work
Now that we've figured out how to mount local directories into the k8s
cluster, we have moved all the configuration into ~/.wiki-k8s/config.json
2020-01-19 15:11:12 -07:00
Eric Dobbs
eaa86fd867 Simplify persistence configuration & expose macos folders
We now map ~/.wiki-k8s in MacOS into the .wiki folder inside the
container and similarly with MacOS ~/workspace/fedwiki

First, when we create the k3d cluster, we include directives that are
passed through to docker to mount the MacOS directories into the
kubernetes host.

Second, we use hostPath volumes in the kubernetes deployment config.

These will work great for the primary use case of a local wiki.
Deployments to remote kubernetes clusters will want to do this with
the PersistentVolumeClaim that was removed with this change.

One luxury of using hostPath and the legacy_security is that we no
longer require an init container.
2020-01-12 19:29:41 -07:00
Eric Dobbs
37d6785ee2 Change the insecure wiki to a farm for *.simple.localtest.me 2020-01-12 16:55:14 -07:00
Eric Dobbs
27a80c7b25 Start an insecure wiki under simple.localtest.me
Bootstrapping a simpler development environment
2020-01-12 15:30:42 -07:00
Eric Dobbs
1eb8c99d2c Upgrade to wiki 0.20.0 1.0.1 2020-01-09 22:41:29 -07:00
Eric Dobbs
5c326ed1ae Add help to remember how to start all the things 2019-12-25 13:08:08 -07:00
Eric Dobbs
fb2aa0f67c Add example kubernetes deployment
This configuration partially works with kubernetes 1.15 running
locally using Docker Desktop for Mac and kind (k8s in docker).

For completeness, we installed kind & created a cluster like this:

    cd /tmp/ && GO111MODULE="on" go get sigs.k8s.io/kind
    kind create cluster --name workshop
    export KUBECONFIG="$(kind get kubeconfig-path --name="workshop")"

We describe finicky details discovered while creating wiki.yaml.

The persistent volume when mounted in wiki-config begins its life with
all files owned by root. This prevented our node user inside the
container from creating the config files inside .wiki. It took a while
to discover the correct securityContext for the wiki-config container.

We tested this configuration as follows:

    alias k=kubectl
    k apply -f wiki.yaml
    export POD=$(k get pod -lapp=wiki -o jsonpath='{.items[*].metadata.name}')
    export PASSWORD=$(k exec svc/wiki-service -- jq -r .admin .wiki/config.json)
    k port-forward svc/wiki-service 3000:80 > /dev/null &
    pbcopy <<<"$PASSWORD"
    open http://localhost:3000
    # click lock icon in the browser to login to wiki page
    # paste the password from the clipboard
    # click wiki to toggle editing on
    # make a few edits to the wiki page

Something about authentication is NOT working for anything except
localhost. When we try the same tests using http://localtest.me or
configuring foo.local in the MacOS /etc/hosts file, for some reason
the cookies don't seem to be passed through to the server. All edits
on other pages end up in browser localStorage.

Nevertheless, I'll commit what I have for now.
2019-11-22 12:24:34 -07:00
Eric Dobbs
fb81d51e29 Use default node user & dumb-init & remove config assumptions
By default the wiki will run in farm mode with friends security
1.0.0
2019-11-16 16:49:43 -07:00
Eric Dobbs
5e6f732fed Bump wiki to version 0.19.0 0.52.0 2019-08-14 12:07:10 -04:00
Eric Dobbs
f85afce8c8 Change base image to node:10-alpine & wiki to 0.17.0 0.51.0 2019-03-27 22:26:09 -06:00
Eric Dobbs
76280f3e7b Update wiki to 0.16.2 0.50.1 2019-03-11 08:00:53 -06:00
Eric Dobbs
356afda8a7 Update wiki version for security fix 0.50.0 2018-11-27 21:10:15 -08:00
Eric Dobbs
e9bd94e860 remind myself how to publish plugin experiments 2018-02-28 08:23:21 -07:00
Eric Dobbs
b0be20f5f3 point to local-farm.wiki.dbbs.co instead 0.14.0 2018-02-25 22:32:46 -07:00
Eric Dobbs
26329ee584 upgrade to wiki-0.14.0 and move configure-wiki to separate step
We should only need to run the configure-wiki script once instead of
every time we start the container.  Also, I don't think that script
was correctly handling PID 1 role (e.g. don't think we forwarded
signals to node nor reaped zombies)
2018-02-25 21:58:43 -07:00
Eric Dobbs
e37d746c69 upgrade to node-8 and to wiki-0.13.0 0.13.0 2017-12-11 08:02:50 -07:00
Eric Dobbs
86548c594a upgrade to wiki 0.12.2
includes update to client and several plugins:
calendar, markdown, and html
0.12.2
2017-11-06 18:00:57 -07:00
Eric Dobbs
ef34fdc759 enable github-based npm packages for WIKI_PACKAGE
npm needs git installed in order to install packages from github
0.12.1+github
2017-10-02 07:10:55 -06:00
Eric Dobbs
e22b66240d enabled building scoped packages & bumped version to 0.12.1 0.12.1 2017-09-20 17:50:00 -06:00
Eric Dobbs
e06405adc1 bumped wiki version to 0.12.0 0.12.0 2017-09-04 21:56:47 -06:00
Eric Dobbs
bc8204c9d3 use build arg for wiki version & for container tag
There is a new version of wiki available.  Want to tag this version
and enable building and tagging the next version.
2017-09-04 21:45:32 -06:00
Eric Dobbs
7f64713024 include script to set-owner-name 0.11.4 2017-07-22 21:55:38 -06:00
Eric Dobbs
2b708a73b2 configure-and-launch-wiki: full path to exec wiki 2017-07-22 13:31:50 -06:00
Eric Dobbs
aa90eb3e86 configure-and-launch-wiki is now owned by app 2017-07-22 13:18:51 -06:00
Eric Dobbs
df8da7ba2c Federated Wiki farm
Encapsulate a few specific parts of wiki configuration as a starting
point for exploring wiki.
2017-07-15 22:36:22 -06:00