blob: 25ff46918565ff1345d443d71a2200a55e77f68b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# End-to-end tests
This directory contains the end-to-end tests for Argo CD Image Updater. The
tests are implemented using [kuttl](https://kuttl.dev) and require some
prerequisites.
**This is work-in-progress at a very early stage**. The end-to-end tests are
not yet expected to work flawlessly, and they require an opinionated setup to
run. If you are going to use the end-to-end tests, it is expected that you are
prepared to hack on them. Do not ask for support, please.
# Components
The end-to-end tests are comprised of the following components:
* A local, vanilla K8s cluster that is treated as volatile. The tests only
support k3s as a cluster at the moment.
* A dedicated Argo CD installation. No other Argo CD must be installed to
the test cluster.
* A Git repository, containing resources to be consumed by Argo CD.
This will be deployed on demand to the test cluster, with test data that
is provided by the end-to-end tests.
* A Docker registry, holding the container images we use for testing.
This will be deployed on demand to the test cluster.
## Local cluster
### Cluster installation
1. Install a recent version of [k3s](https://k3s.io/) on your local machine.
If you want to re-use your k3s cluster, be aware that the test suite needs
changes to the cluster's configuration, i.e. it will set up a custom
container registry and credentials.
2. Run `./bin/install.sh`. This will
* Configure your Docker daemon to be able to push to the test registry in
an insecure manner.
* Configure K3s to be able to access the test registry
3. Create required namespace in the cluster: `kubectl create ns argocd-image-updater-e2e`
## Pre-requisites
1. Run `make install-prereqs` to install all the pre-requisites on your local
cluster.
|