@@ -532,7 +532,7 @@ WEB_UI_CONFIG_FILE="tests/config/local/ocis-web.json" \
532532ocis/bin/ocis server
533533```
534534
535- The first oCIS instance should be available at: https://localhost:9200/
535+ The first oCIS instance should be available at: < https://localhost:9200/ >
536536
537537### Setup Second oCIS Instance
538538
@@ -552,7 +552,7 @@ source tests/config/local/.env-federation && ocis/bin/ocis init
552552ocis/bin/ocis server
553553```
554554
555- The second oCIS instance should be available at: https://localhost:10200/
555+ The second oCIS instance should be available at: < https://localhost:10200/ >
556556
557557{{< hint info >}}
558558To enable ocm in the web interface, you need to set the following envs:
@@ -589,6 +589,92 @@ The sample `fontsMap.json` file is located in `tests/config/drone/fontsMap.json`
589589}
590590```
591591
592+ ## Running Test on helm setup
593+
594+ Make sure the following tools are installed:
595+
596+ Install [ k3d] ( https://k3d.io/stable/#install-script )
597+ Install [ kubectl] ( https://kubernetes.io/docs/tasks/tools/#kubectl )
598+ Install [ helm] ( https://helm.sh/docs/intro/install/ )
599+
600+ Also, clone the [ ` ocis-charts ` ] ( https://github.com/owncloud/ocis-charts/ ) repository.
601+
602+ 1 . Setup Basicauth
603+ Enable basic authentication for the proxy in the ocis-charts repo:
604+ ``` bash
605+ cd ocis-charts
606+ # Enable basic auth in proxy deployment
607+ sed -i ' /- name: PROXY_HTTP_ADDR/i\
608+ - name: PROXY_ENABLE_BASIC_AUTH\
609+ value: "true"' ./charts/ocis/templates/proxy/deployment.yaml
610+ ```
611+
612+
613+
614+ ``` bash
615+ # copy authbasic service
616+ cp -r < path-to-ocis-repo> /tests/config/drone/k3s/authbasic ./charts/ocis/templates/
617+ # Update values.yaml
618+ cp < path-to-ocis-repo> /tests/config/drone/k3s/values.yaml charts/charts/ocis/ci/deployment-values.yaml
619+ # Update template values
620+ sed -i ' /{{- $_ := set .scope "appNameAuthMachine" "authmachine" -}}/a\ {{- $_ := set .scope "appNameAuthBasic" "authbasic" -}}' ./charts/ocis/templates/_common/_tplvalues.tpl
621+ ```
622+
623+ 2 . Install charts using k3d
624+
625+ ``` bash
626+ k3d cluster create drone --api-port ocis-server:33199 -p ' 80:80@loadbalancer' -p ' 443:443@loadbalancer' --k3s-arg ' --tls-san=k3d@server:*' --k3s-arg ' --disable=metrics-server@server:*'
627+ k3d kubeconfig get drone > kubeconfig.yaml
628+ chmod 0600 kubeconfig.yaml
629+ kubectl create configmap coredns-custom --namespace kube-system --from-literal=' rewritehost.override=rewrite name exact ocis-server host.k3d.internal'
630+ kubectl -n kube-system rollout restart deployment coredns
631+ make helm-install-atomic
632+ ```
633+
634+ 3 . Run test
635+ To run test you should set ` K8S ` to true.
636+ ``` bash
637+ cd ../ocis
638+
639+ # build and run ocis wrapper
640+ make -C ./tests/ociswrapper
641+ ./tests/ociswrapper/bin/ociswrapper serve --url https://ocis-server --admin-username admin --admin-password admin --skip-ocis-run
642+
643+ K8S=true TEST_SERVER_URL=" ocis-server" make test-acceptance-api BEHAT_FEATURE=tests/acceptance/features/apiArchiver/downloadById.feature
644+ ```
645+ 1 . Run Test With ociswrapper
646+ ``` bash
647+ ociswrapper serve --url https://ocis-server --admin-username admin --admin-password admin --skip-ocis-run
648+ ```
649+ 1 . Run Antivirus Test
650+ To run clamav service run these command deploying the helm chart
651+ ``` bash
652+ cp -r config/drone/k8s/clamav charts/ocis/templates/
653+ sed -i ' s/{{ *\.Values\.features\.virusscan\.infectedFileHandling *| *quote *}}/"delete"/' ocis/templates/antivirus/deployment.yaml
654+ sed -i ' s/{{ *\.Values\.features\.virusscan\.infectedFileHandling *| *quote *}}/"delete"/' ocis/templates/antivirus/deployment.yaml
655+ sed -i ' /name: ANTIVIRUS_SCANNER_TYPE/{n;s/value: *"icap"/value: "clamav"/}' charts/ocis/templates/antivirus/deployment.yaml
656+ sed -i ' /- name: ANTIVIRUS_SCANNER_TYPE/i\ - name: ANTIVIRUS_CLAMAV_SOCKET\n value: "tcp://clamav:3310"' charts/ocis/templates/antivirus/deployment.yaml
657+ ```
658+ 1 . Run Email Test
659+ To run email service run these command deploying the helm chart
660+ ``` bash
661+ cp -r < path-to-ocis-repo> /tests/config/drone/k8s/mailpit charts/ocis/templates/
662+ ```
663+ After ocis is deployed
664+ ``` bash
665+ kubectl port-forward svc/mailpit EMAIL_PORT:8025 -n ocis
666+ ```
667+ 1 . Run Authapp Test
668+ To run authapp service run these command deploying the helm chart
669+ ``` bash
670+ cp -r < path-to-ocis-repo> /tests/config/drone/k8s/mailpit charts/ocis/templates/
671+ ```
672+ 1 . Run Tika Test
673+ To run tika service run these command deploying the helm chart
674+ ``` bash
675+ cp -r < path-to-ocis-repo> /tests/config/drone/k8s/tika charts/ocis/templates/
676+ ```
677+
592678## Generating Code Coverage Report by Running Acceptance Tests
593679
594680To find out what oCIS code is covered by the API tests, first create a debug build of oCIS.
@@ -623,4 +709,4 @@ You can also view the report in a web UI using the following command.
623709go tool cover -html=cov.txt
624710```
625711
626- This command should open a browser with the code report.
712+ This command should open a browser with the code report.
0 commit comments