Quan Tian
59b1871b30
Fix link in getting-started.md
...
Signed-off-by: Quan Tian <qtian@vmware.com>
2022-03-11 22:29:44 +08:00
Takumasa Sakao
03a5e648bc
Use version 2 config and mention containerd config command
...
Signed-off-by: Takumasa Sakao <tsakao@zlab.co.jp>
2022-03-05 02:22:30 +09:00
Phil Estes
2b68c03a60
Update Go version recommendation in getting started
...
Signed-off-by: Phil Estes <estesp@amazon.com>
2022-02-23 15:48:19 -05:00
Shuntaro Azuma
7321032716
Change the context to avoid misunderstandings
...
Signed-off-by: Shuntaro Azuma <azush@amazon.com>
2022-02-10 11:06:25 +09:00
Kazuyoshi Kato
cc59ae4d98
tracing: return (ctx, span) from StartSpan
...
OpenTelemetry's Tracer#Start() returns (ctx, span). We have no reasons
to swap them.
Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2022-01-29 00:41:21 +00:00
Kazuyoshi Kato
e751f1f44f
tracing: support OTLP/HTTP in addition to gRPC
...
This change adds OTLP/HTTP, specifically http/protobuf support.
http/protobuf is recommended in
https://github.com/open-telemetry/opentelemetry-specification/blob/v1.8.0/specification/protocol/exporter.md .
However kube-apiserver and CRI-O use gRPC, kubelet may support
gRPC in future. So we should support gRPC as well.
Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2022-01-29 00:41:18 +00:00
Cody Roseborough
8dd36423b6
Revert "Add shared content label to namespaces"
...
This reverts commit e692a01926
.
Signed-off-by: Cody Roseborough <cdr@amazon.com>
2022-01-12 16:38:06 -08:00
Jan Klippel
4f0f363504
corrected link in cri architecture documentation
...
The referenced document was moved into the staging directory within the kubernetes repository
Signed-off-by: Jan Klippel <g1thub@kl1pp3l.de>
2022-01-07 14:58:37 +01:00
Markus Lehtonen
9c2e3835fa
cri: add ignore_rdt_not_enabled_errors config option
...
Enabling this option effectively causes RDT class of a container to be a
soft requirement. If RDT support has not been enabled the RDT class
setting will not have any effect.
Signed-off-by: Markus Lehtonen <markus.lehtonen@intel.com>
2022-01-04 09:27:54 +02:00
Markus Lehtonen
eae14688c6
tasks: add Linux rdt support
...
Add support for configuring the Linux resctrl pseudo-filesystem with
goresctrl library. The functionality is integrated in the
"io.containerd.service.v1.tasks-service" plugin.
Signed-off-by: Markus Lehtonen <markus.lehtonen@intel.com>
2022-01-04 09:27:54 +02:00
Derek McGowan
07aa42f427
Merge pull request #6207 from marquiz/devel/docs
...
docs: improve plugin documentation
2022-01-03 13:20:29 -08:00
Takumasa Sakao
2b28dd363b
Fix wrong make target on documentation
...
Signed-off-by: Takumasa Sakao <sakataku7@gmail.com>
2021-11-23 03:42:08 +09:00
Olli Janatuinen
2a81c9f677
CRI: Support enable_unprivileged_icmp and enable_unprivileged_ports options
...
Signed-off-by: Olli Janatuinen <olli.janatuinen@gmail.com>
2021-11-15 18:30:09 +02:00
Markus Lehtonen
3196e65f50
docs: document the runtime shim plugin config options
...
Add documentation for config options under
[plugins."io.containerd.runtime-shim.v2.shim"].
Signed-off-by: Markus Lehtonen <markus.lehtonen@intel.com>
2021-11-04 18:52:18 +02:00
Markus Lehtonen
0d8e07681f
docs: use proper markdown lists in containerd-config.toml.5.md
...
Signed-off-by: Markus Lehtonen <markus.lehtonen@intel.com>
2021-11-04 18:45:41 +02:00
Dat Nguyen
afe39bebfe
add oci.WithAllDevicesAllowed flag for privileged_without_host_devices
...
This commit adds a flag that enable all devices whitelisting when
privileged_without_host_devices is already enabled.
Fixes #5679
Signed-off-by: Dat Nguyen <dnguyen7@atlassian.com>
2021-11-04 10:24:19 +11:00
Phil Estes
dc869b7855
Merge pull request #6125 from xens/update_doc_to_v2
...
Update doc to version 2 syntax
2021-10-28 10:20:17 -04:00
Romain Aviolat
ebc5cf19ac
feat(doc): update to version 2 syntax
...
Signed-off-by: Romain Aviolat <r.aviolat@gmail.com>
2021-10-21 19:06:47 +02:00
Romain Aviolat
3b73922fba
feat(doc): add Core Scheduling documentation
...
Adding documentation for the Core Scheduling feature.
Signed-off-by: Romain Aviolat <r.aviolat@gmail.com>
2021-10-18 19:16:25 +02:00
Michael Crosby
55893b9be7
Add CNI conf based on runtime class
...
Signed-off-by: Michael Crosby <michael@thepasture.io>
2021-09-17 19:05:06 +00:00
Michael Crosby
1efed43090
add ip_pref CNI options for primary pod ip
...
This fixes the TODO of this function and also expands on how the primary pod ip
is selected. This change allows the operator to prefer ipv4, ipv6, or retain the
ordering provided by the return results of the CNI plugins.
This makes it much more flexible for ops to configure containerd and how IPs are
set on the pod.
Signed-off-by: Michael Crosby <michael@thepasture.io>
2021-09-10 10:04:21 -04:00
kerthcet
820bd92690
fix document non-synchronous in crictl.md
...
Signed-off-by: kerthcet <kerthcet@gmail.com>
2021-09-06 17:47:46 +08:00
Adelina Tuvenie
6d3d34b85d
Update Pause image in tests & config
...
With the introduction of Windows Server 2022, some images have been updated
to support WS2022 in their manifest list. This commit updates the test images
accordingly.
Signed-off-by: Adelina Tuvenie <atuvenie@cloudbasesolutions.com>
2021-08-31 19:42:57 +03:00
Sebastiaan van Stijn
9cc179aa77
BUILDING.md: remove some bits about building runc
...
Refer users to runc's documentation instead of duplicating
the instructions.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-08-10 09:31:02 +02:00
Cody Roseborough
e692a01926
Add shared content label to namespaces
...
Adds shared content labels to namespaces allowing content to be shared
between namespaces if that namespace is specifically tagged as being
sharable by adding the `containerd.io/namespace/sharable` label to the
namespace.
Signed-off-by: Cody Roseborough <cdr@amazon.com>
2021-07-28 18:49:32 +00:00
Mike Brown
b5fc7846c4
adding a little more clarity
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-07-26 14:55:44 -05:00
Derek McGowan
a7ad6b3be5
Add support for registry host path override
...
Adds support for mirrors which are non-compliant with the
OCI distribution specification but have previously mirrored
content with a namespace prefix after the API root `/v2`.
Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-07-02 09:48:27 -07:00
Derek McGowan
95c708572f
Update documenation for OCI distribution 1.0
...
Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-07-01 17:24:08 -07:00
Mike Brown
560e7d4799
fixing some doc links
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-06-21 18:24:47 -05:00
Zufar Dhiyaulhaq
75b4c83f04
fix deprecation config for default runtime
...
Signed-off-by: Zufar Dhiyaulhaq <zufardhiyaulhaq@gmail.com>
2021-06-20 10:09:09 -04:00
Mike Brown
7a2b04758b
adds explanation for seccomp unset/unconfined default vs runtime default
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-06-07 17:57:18 -05:00
Kazuyoshi Kato
75daf45beb
docs: explicitly mention containerd's Prometheus path
...
It is under `/v1/metrics`, which should be explicitly called out.
Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2021-06-01 11:15:06 -07:00
Iceber Gu
93d4541a20
docs/cri: update ocicrypt link
...
Signed-off-by: Iceber Gu <wei.cai-nat@daocloud.io>
2021-05-31 15:32:30 +08:00
Iceber Gu
7924664951
docs/cri: fix broken links
...
Signed-off-by: Iceber Gu <wei.cai-nat@daocloud.io>
2021-05-31 15:31:51 +08:00
Gaurav Gahlot
a5b1740bbe
fixed typos
...
Signed-off-by: Gaurav Gahlot <gauravgahlot0107@gmail.com>
2021-05-19 10:31:50 +05:30
Mike Brown
6e249b1aea
adds credentials description
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-05-12 08:37:37 -05:00
Mike Brown
b59e29773c
adds description for hosts.toml
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-05-02 00:46:41 +00:00
Akihiro Suda
41fc516a22
docs/rootless.md: recommend "easy way" over "hard way"
...
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2021-04-14 16:57:46 +09:00
maoyangLiu
abd4be07ac
fix the 404 url
...
Signed-off-by: maoyangLiu <liumaoyang@inspur.com>
2021-04-13 20:55:26 +08:00
Mike Brown
e96d2a5d90
Revert "remove two very old no longer used runtime options"
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-04-12 10:16:01 -05:00
Mike Brown
f9bcf4a8a4
add section link
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-04-07 12:29:43 -05:00
Mike Brown
d4be6aa8fa
rm mirror defaults; doc registry deprecations
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-04-07 12:29:43 -05:00
Mike Brown
0186a329e9
remove two very old no longer used runtime options
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2021-04-06 20:41:09 -05:00
Fu, Wei
80fa9fe32a
Merge pull request #5135 from AkihiroSuda/default-config-crypt
...
add imgcrypt stream processors to the default config
2021-03-25 14:31:38 +08:00
Andrei Dobre
e4b9b1038b
Make CRI registry docs more clear
...
Added reference to previous config syntax.
Signed-off-by: Andrei Dobre <andreidobre.web@gmail.com>
2021-03-23 22:10:06 +02:00
pacoxu
ffff688663
upgrade pause image to 3.5 for non-root
...
Signed-off-by: pacoxu <paco.xu@daocloud.io>
2021-03-16 23:20:35 +08:00
Akihiro Suda
ecb881e5e6
add imgcrypt stream processors to the default config
...
Enable the following config by default:
```toml
version = 2
[plugins."io.containerd.grpc.v1.cri".image_decryption]
key_model = "node"
[stream_processors]
[stream_processors."io.containerd.ocicrypt.decoder.v1.tar.gzip"]
accepts = ["application/vnd.oci.image.layer.v1.tar+gzip+encrypted"]
returns = "application/vnd.oci.image.layer.v1.tar+gzip"
path = "ctd-decoder"
args = ["--decryption-keys-path", "/etc/containerd/ocicrypt/keys"]
env = ["OCICRYPT_KEYPROVIDER_CONFIG=/etc/containerd/ocicrypt/ocicrypt_keyprovider.conf"]
[stream_processors."io.containerd.ocicrypt.decoder.v1.tar"]
accepts = ["application/vnd.oci.image.layer.v1.tar+encrypted"]
returns = "application/vnd.oci.image.layer.v1.tar"
path = "ctd-decoder"
args = ["--decryption-keys-path", "/etc/containerd/ocicrypt/keys"]
env = ["OCICRYPT_KEYPROVIDER_CONFIG=/etc/containerd/ocicrypt/ocicrypt_keyprovider.conf"]
```
Fix issue 5128
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2021-03-15 13:27:16 +09:00
Brian Goff
b0b6d9aa03
Add support for using a host registry dir in cri
...
This will be used instead of the cri registry config in the main config
toml.
---
Also pulls in changes from containerd/cri@d0b4eecbb3
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2021-03-12 22:42:22 +00:00
Sebastiaan van Stijn
79a51cd16a
move runc version to a separate file for easier consumption
...
This moves the runc version to build to scripts/setup/runc-version,
which makes it easier for packagers to find the default version
to use.
The RUNC_VERSION environment variable can still be used to override
the version, which can be used (e.g.) to test against different versions
in our CI.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-10 14:28:29 +01:00
Sebastiaan van Stijn
8325ba5d36
Separate runc binary version from libcontainer version
...
Now that the dependency on runc (libcontaienr) code has been reduced
considerably, it is probbaly ok to cut the version dependency between
libcontainer and the runc binary that is supported.
This patch separates the runc binary version from the version of
libcontainer that is defined in go.mod, and updates the documentation
accordingly.
The RUNC_COMMIT variable in the install-runc script is renamed to
RUNC_VERSION to encourage using tagged versions, and the Dockerfile
in contrib is updated to allow building with a custom version.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-10 13:41:12 +01:00
Sebastiaan van Stijn
b89a63a235
Remove references to apparmor and selinux buildtags for runc
...
From the runc v1.0.0-rc93 release notes:
> The "selinux" and "apparmor" buildtags have been removed, and now all runc
> builds will have SELinux and AppArmor support enabled. Note that "seccomp"
> is still optional (though we very highly recommend you enable it).
Also adding a note about kmem support.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-10 12:16:54 +01:00
Iceber Gu
f37ae8fc35
move to v3.4.1 for the pause image
...
Signed-off-by: Iceber Gu <wei.cai-nat@daocloud.io>
2021-03-07 15:21:20 +08:00
Mike Brown
4379557924
Merge pull request #5086 from eramos2/revise-docs
...
Fixed wording in docs, and broken link
2021-02-25 15:32:25 -06:00
alexyadon
c61f0ceada
Fix broken docs links ( #5085 )
...
* docs: fix broken links
Signed-off-by: Alex Yadon <alex.yadon@ibm.com>
* docs: use relative paths
Signed-off-by: Alex Yadon <alex.yadon@ibm.com>
2021-02-25 14:09:49 -06:00
Emmanuel Ramos
224efa9dae
Fixed wording in docs, and broken link
...
Signed-off-by: Emmanuel Ramos <emmanuel.ramos2@ibm.com>
2021-02-25 13:18:13 -05:00
Lorenz Brun
36d0bc1f2b
Allow moving netns directory into StateDir
...
Signed-off-by: Lorenz Brun <lorenz@nexantic.com>
2021-02-10 18:33:14 +01:00
Wei Fu
3299c5560d
Merge pull request #4967 from dmcgowan/cleanup-root
...
Move documentation and helper directories out of root
2021-01-24 15:08:19 +08:00
Aditi Sharma
d09bf18862
Clean Up Doc and fix some broken links
...
Signed-off-by: Aditi Sharma <adi.sky17@gmail.com>
2021-01-20 15:45:43 +05:30
Derek McGowan
7dffdfa560
Move documentation and helper directories out of root
...
Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-01-12 12:19:50 -08:00
Shengjing Zhu
91dc69ee43
docs: point cri release tarball to github release page
...
Signed-off-by: Shengjing Zhu <zhsj@debian.org>
2021-01-03 17:50:40 +08:00
Shengjing Zhu
5988bfc1ef
docs: Various typo found by codespell
...
Signed-off-by: Shengjing Zhu <zhsj@debian.org>
2020-12-22 13:22:16 +08:00
Akihiro Suda
7e6e4c466f
remove "selinux" build tag
...
The build tag was removed in go-selinux v1.8.0: opencontainers/selinux#132
Related: remove "apparmor" build tag: 0a9147f3aa
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-12-15 20:05:25 +09:00
Kazuyoshi Kato
03cc4cedc5
docs: fix broken links
...
This change fixes broken links in docs/.
Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2020-11-11 10:19:17 -08:00
Kazuyoshi Kato
a05fa4214d
Move CRI plugin's docs from docs/ to docs/cri/
...
There are a lot of documents which are specifically talking about
the CRI plugin. These docs should be in docs/cri/.
Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2020-11-10 11:49:05 -08:00
Mike Brown
1ab8bdc27b
refresh cri testing guide after move
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2020-10-30 18:22:37 -05:00
Mike Brown
b6053fb7c3
change default for disablesnapshotannotations
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2020-10-29 15:30:13 -05:00
shouhei
f1a3235e84
Fix typo in examples of registry config
...
Signed-off-by: shouhei <shouhei.yamaguchi.be@gmail.com>
2020-10-11 01:52:16 +09:00
Derek McGowan
e7a350176a
Merge containerd/cri into containerd/containerd
...
Signed-off-by: Derek McGowan <derek@mcg.dev>
2020-10-07 10:58:39 -07:00
Martin Hickey
fe5fdccdaf
Update after review
...
Review comments:
- https://github.com/containerd/cri/pull/1591#pullrequestreview-499636859
Signed-off-by: Martin Hickey <martin.hickey@ie.ibm.com>
2020-09-30 19:00:08 +00:00
Martin Hickey
70a56ae327
Updates to the image registry doc
...
Signed-off-by: Martin Hickey <martin.hickey@ie.ibm.com>
2020-09-30 14:51:59 +00:00
Mike Brown
2c2dd59f32
Merge branch 'master' into update-config-syntax
2020-09-24 15:58:39 -05:00
Akihiro Suda
0762fdd9e2
Revert "Fix doc for runtime specific options"
...
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-09-22 17:23:19 +09:00
Akihiro Suda
e3e2c39462
update docs/rootless.md
...
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-08-08 04:08:35 +09:00
Wei Fu
df8352f1ff
Merge pull request #4335 from ktock/sn-doc
...
Add doc about snapshotter based on shared remote storage
2020-07-30 23:19:59 +08:00
Mike Brown
fe9bb8da65
Merge branch 'master' into ssdoc
2020-07-29 11:44:10 -05:00
Mike Brown
63400c7694
Merge pull request #1543 from ktock/discard-content
...
Allow GC to discard content after successful pull and unpack
2020-07-29 11:39:28 -05:00
Takumasa Sakao
4c8164bccf
Specify version = 2 & fix wrong key in registry.md (GCR example)
...
Signed-off-by: Takumasa Sakao <sakataku7@gmail.com>
2020-07-28 17:54:12 +09:00
ktock
375dd76255
Add description about disable_snapshot_annotations
to configuration doc
...
Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
2020-07-28 09:30:20 +09:00
ktock
c80660b82b
Allow GC to discard content after successful pull and unpack
...
This commit adds a config flag for allowing GC to clean layer contents up after
unpacking these contents completed, which leads to deduplication of layer
contents between the snapshotter and the contnet store.
Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
2020-07-28 09:05:47 +09:00
ktock
c2081369c5
Add doc about remote snapshotter
...
Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
2020-07-23 13:05:05 +09:00
Michael Crosby
5f5d954b6a
add selinux category range to config
...
This allows an admin to set the upper bounds on the category range for selinux
labels. This can be useful when handling allocation of PVs or other volume
types that need to be shared with selinux enabled on the hosts and volumes.
Signed-off-by: Michael Crosby <michael@thepasture.io>
2020-07-20 16:02:07 -04:00
Brandon Lum
f93b72530f
Update doc cri plugin convention
...
Signed-off-by: Brandon Lum <lumjjb@gmail.com>
2020-07-22 17:34:17 +00:00
HsuanChi (Austin) Kuo
904ab30f9d
Fix doc for runtime specifc options
...
Signed-off-by: Hsuan-Chi Kuo <hckuo2@illinois.edu>
2020-07-10 11:04:49 -05:00
Akihiro Suda
fe6833a9a4
config: TolerateMissingHugePagesCgroupController -> TolerateMissingHugetlbController
...
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-07-02 13:49:42 +09:00
Avi Deitcher
e7f069e2c3
describe content flow and dependencies
...
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2020-06-24 21:20:42 +03:00
Mike Brown
b661ad711e
Merge pull request #1504 from lorenz/ignore-image-defined-volumes
...
Add option for ignoring volumes defined in images
2020-06-14 11:52:48 -05:00
Wei Fu
ae8200bf93
Merge pull request #1499 from webwurst/patch-1
...
Fix typo
2020-06-10 13:46:29 +08:00
Lorenz Brun
5a1d49b063
Add option for ignoring volumes defined in images
...
Signed-off-by: Lorenz Brun <lorenz@brun.one>
2020-06-09 21:02:47 +02:00
Brian Goff
c694c63176
Add config for registry http headers
...
This adds a configuration knob for adding request headers to all
registry requests. It is not namespaced to a registry.
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2020-06-08 18:56:15 -07:00
Tobias Bradtke
098e040014
Fix typo
...
Signed-off-by: Tobias Bradtke <webwurst@gmail.com>
2020-06-05 18:19:49 +02:00
Michael Crosby
8898550e34
Merge pull request #1498 from mxpv/base
...
Specify base OCI runtime spec
2020-05-29 16:34:29 -04:00
Maksym Pavlenko
df8d6c5b7b
Update documentation for base OCI spec files
...
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2020-05-28 14:45:11 -07:00
Maksym Pavlenko
8d54f39753
Allow specify base OCI runtime spec
...
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2020-05-28 13:39:31 -07:00
Mike Brown
a7ad3bc01f
add a registry auth tutorial
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2020-05-22 15:39:30 -05:00
Mike Brown
3f0aa45453
removing boilerplate test replace by projectboiler check
...
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2020-05-14 17:52:12 -05:00
Maksym Pavlenko
674fe72aa8
Update docs for unset seccomp profile
...
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2020-05-10 10:46:58 -07:00
Dave Syer
5ac8515bf0
Clarify that plugin names are long in version = 2
...
Otherwise it's confusing for readers who just need quick reference
for plugin configurations.
Signed-off-by: Dave Syer <dsyer@pivotal.io>
2020-04-27 14:35:41 +01:00
Martin Hickey
02307da36d
Add improvement to docs
...
Some small improvements to docs of things I found while
using the docs.
Signed-off-by: Martin Hickey <martin.hickey@ie.ibm.com>
2020-04-23 09:47:54 +00:00
Wei Fu
a45f57bcf1
Merge pull request #1375 from jdewinne/registry-doc
...
Update registry.md for auth config
2020-04-21 16:25:08 +08:00
Joris De Winne
050e8c63c0
Update registry.md for auth config
...
Signed-off-by: Joris De Winne <joris.dewinne@gmail.com>
2020-04-20 21:19:35 -07:00