1+ include env.mk
2+
13SUDO =
24
35.EXPORT_ALL_VARIABLES :
@@ -11,42 +13,13 @@ build:
1113test : # # Unit tests
1214 go test -v ./... -covermode=count -coverprofile=coverage.out
1315
14- integration-test : prepare-tools skaffold-deploy _pytest # # End-To-End tests with Kubernetes
16+ integration-test : prepare-tools _prepare-env _pytest # # End-To-End tests with Kubernetes
1517_pytest : # # Shortcut for E2E tests without setting up the environment
1618 pipenv sync
1719 pipenv run pytest -s
1820
19- k3d : prepare-tools
20- (${SUDO} docker ps | grep k3d-bmt-server-0 > /dev/null 2>&1 ) || ${SUDO} k3d cluster create bmt --registry-create bmt-registry:0.0.0.0:5000 --agents 1 -p " 30080:30080@agent:0" -p " 30081:30081@agent:0" -p " 30050:30050@agent:0"
21- k3d kubeconfig merge bmt
22- kubectl create ns backups || true
23- cat /etc/hosts | grep " bmt-registry" > /dev/null || (sudo /bin/bash -c " echo '127.0.0.1 bmt-registry' >> /etc/hosts" )
24-
25- prepare-tools :
26- mkdir -p .build
27- # skaffold
28- @test -f ./.build/skaffold || (curl -sL https://storage.googleapis.com/skaffold/releases/v2.0.0/skaffold-linux-amd64 --output ./.build/skaffold && chmod +x ./.build/skaffold)
29- # kubectl
30- @test -f ./.build/kubectl || (curl -sL https://dl.k8s.io/release/v1.25.0/bin/linux/amd64/kubectl --output ./.build/kubectl && chmod +x ./.build/kubectl)
31- # k3d
32- @test -f ./.build/k3d || (curl -sL https://github.com/k3d-io/k3d/releases/download/v5.4.6/k3d-linux-amd64 --output ./.build/k3d && chmod +x ./.build/k3d)
33- # helm
34- @test -f ./.build/helm || (curl -sL https://get.helm.sh/helm-v3.10.2-linux-amd64.tar.gz --output /tmp/helm.tar.gz && tar xf /tmp/helm.tar.gz -C /tmp && mv /tmp/linux-amd64/helm ./.build/helm && chmod +x ./.build/helm)
35- # kubens
36- @test -f ./.build/kubens || (curl -sL https://raw.githubusercontent.com/ahmetb/kubectx/master/kubens --output ./.build/kubens && chmod +x ./.build/kubens)
37-
38- skaffold-deploy : prepare-tools
39- skaffold deploy -p deps
40- skaffold build -p app --tag e2e --default-repo bmt-registry:5000 --push --insecure-registry bmt-registry:5000 --disable-multi-platform-build=true --detect-minikube=false --cache-artifacts=false
41- skaffold deploy -p app --tag e2e --assume-yes=true --default-repo bmt-registry:5000
42-
43- export KUBECONFIG=~/.k3d/kubeconfig-bmt.yaml; kubectl apply -f "docs/examples/" -n backups; \
44- kubectl port-forward svc/server-backup-repository-server -n backups 8050:8080 &
45-
46-
47- dev : # # Runs the development environment in Kubernetes
48- skaffold deploy -p deps
49- skaffold dev -p app --tag e2e --assume-yes=true --default-repo bmt-registry:5000 --force=true
21+ _prepare-env :
22+ kubectl apply -f " docs/examples/" -n backups
5023
5124run :
5225 export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE; \
0 commit comments