-
Notifications
You must be signed in to change notification settings - Fork 8
79 lines (72 loc) · 2.24 KB
/
e2e.yml
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
name: E2E
on:
push:
branches:
- master
# Run tests for any PRs.
pull_request:
env:
IMAGE_NAME: fluentd-sidecar-injector
KIND_VERSION: v0.25.0
KUBECTL_VERSION: v1.30.7
jobs:
e2e-test:
runs-on: ubuntu-latest
strategy:
matrix:
k8s-version: [1.29.10, 1.30.6, 1.31.2]
steps:
- uses: actions/checkout@master
- uses: actions/setup-go@v5
with:
go-version-file: "go.mod"
- name: Install kind
env:
KIND_VERSION: ${{ env.KIND_VERSION }}
BIN_DIR: ${{ github.workspace }}/tools
run: |
mkdir -p $BIN_DIR
curl -sSLo "$BIN_DIR/kind" "https://github.com/kubernetes-sigs/kind/releases/download/$KIND_VERSION/kind-linux-amd64"
chmod +x "$BIN_DIR/kind"
echo "$BIN_DIR" >> "$GITHUB_PATH"
- name: Install kubectl
env:
KUBECTL_VERSION: ${{ env.KUBECTL_VERSION }}
BIN_DIR: ${{ github.workspace }}/tools/
run: |
mkdir -p $BIN_DIR
curl -sSLo "$BIN_DIR/kubectl" "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl"
chmod +x "$BIN_DIR/kubectl"
echo "$BIN_DIR" >> "$GITHUB_PATH"
- name: Setup kind ${{ matrix.k8s-version }}
env:
K8S_VERSION: ${{ matrix.k8s-version }}
run: |
./scripts/kind-with-registry.sh
- name: Info
run: |
kind version
kubectl cluster-info
kubectl version
- name: Install cert-manager
run: |
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.6.1/cert-manager.yaml
- name: Build docker image
run: |
IMAGE_ID=localhost:5000/$IMAGE_NAME
SHA=${{ github.sha }}
docker build . --file Dockerfile --tag $IMAGE_ID:$SHA
docker push $IMAGE_ID:$SHA
- name: Install ginkgo
run: |
go install -mod=mod github.com/onsi/ginkgo/v2/ginkgo
- name: Check nodes
run: |
kubectl get node
- name: Testing
run: |
IMAGE_ID=localhost:5000/$IMAGE_NAME
SHA=${{ github.sha }}
export FLUENTD_SIDECAR_INJECTOR_IMAGE=$IMAGE_ID:$SHA
go mod download
ginkgo -r ./e2e