generated from meshery/meshery-istio
-
Notifications
You must be signed in to change notification settings - Fork 45
129 lines (125 loc) · 5.11 KB
/
e2etest.yaml
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
name: E2E Test Traefik Mesh
on:
push:
branches:
- "*"
tags:
- "v*"
pull_request:
branches:
- "*"
release:
types: [published]
jobs:
SetPatterfile:
runs-on: ubuntu-latest
outputs:
sm_version: ${{ steps.gettag.outputs.release }}
adapter_version: ${{ env.version }}
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Get version of adapter
run: |
if [ ${{ github.event_name }} == "release" ];then
echo "version=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV
else
echo "version=edge" >> $GITHUB_ENV
fi
- name: Get latest release tag
id: gettag
uses: pozetroninc/github-action-get-latest-release@master
with:
repository: traefik/mesh
excludes: prerelease, draft
- name: Change service mesh version in patternfile
run: |
yq e -i '.services.traefik.version="${{ steps.gettag.outputs.release }}"' ./.github/install/deploy.yaml
cat ./.github/install/deploy.yaml
- name: Uploading file
uses: actions/upload-artifact@v2
with:
name: patternfile
path: ./.github/install/deploy.yaml
TestTraefik:
needs: SetPatterfile
uses: meshery/meshery/.github/workflows/test_adaptersv2.yaml@master
with:
expected_resources: grafana-core,jaeger,prometheus-core,traefik-mesh-controller,traefik-mesh-proxy
expected_resources_types: pod,pod,pod,pod,pod
expected_resources_namespaces: traefik,traefik,traefik,traefik,traefik
deployment_url: https://raw.githubusercontent.com/meshery/meshery/master/install/deployment_yamls/k8s/meshery-traefik-mesh-deployment.yaml
service_url: https://raw.githubusercontent.com/meshery/meshery/master/install/deployment_yamls/k8s/meshery-traefik-mesh-service.yaml
adapter_name: traefik
patternfile_name: deploy.yaml
provider: Local
k8s_version: v1.20.1
sm_version: ${{ needs.SetPatternfile.outputs.sm_version }}
adapter_version: ${{ needs.SetPatternfile.outputs.adapter_version }}
output_filename: data.json
secrets:
token: ${{ secrets.PROVIDER_TOKEN }}
UpdateDocs:
needs: TestTraefik
if: "always() && github.event_name != 'pull_request' "
runs-on: ubuntu-latest
steps:
- name: Skip if needed
run: |
echo "this is it ${{ needs.SkipIfNeeded.outputs.skipdocupdate }} "
if [ "${{github.event_name }}" == "push" ];then
echo "version=edge" >> $GITHUB_ENV
fi
if [ "${{github.event_name }}" == "release" ];then
echo "version=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV
fi
- uses: actions/checkout@v3
with:
repository: meshery/meshery
token: ${{ secrets.GH_ACCESS_TOKEN }}
- name: DownloadJSON
uses: actions/download-artifact@v2
with:
name: data.json
- name: Add commit SHORT_SHA
run: echo "SHORT_SHA=`echo ${GITHUB_SHA} | cut -c1-8`" >> $GITHUB_ENV
- name: echo results
run: |
pretty=$(jq . data.json)
rm data.json
mkdir -p ./docs/_compatibility/meshery-traefik-mesh
cd ./docs/_compatibility/meshery-traefik-mesh
touch data.json
echo $pretty > data.json
cat data.json
touch test.md
filename=(`date +%m-%d-%Y-%H-%M-%m_${SHORT_SHA}`)
echo $filename
echo "---
timestamp: $(jq '.metadata.runon| strptime("%a %b %e %X %Z %Y") | strftime("%Y-%m-%d %X %Z %a")' data.json)
meshery-component: meshery-traefik-mesh
meshery-component-version: $version
meshery-server-version: $(jq '.metadata."meshery-server-version"' data.json)
k8s-distro: minikube
k8s-version: $(jq '.metadata.k8s_version' data.json)
service-mesh: traefik-mesh
service-mesh-version: $(jq '.metadata.service_mesh_version' data.json)
tests:
pod/traefik-mesh-controller: $(jq '.resources_status."pod/traefik-mesh-controller"' data.json)
pod/traefik-mesh-proxy: $(jq '.resources_status."pod/traefik-mesh-proxy"' data.json)
pod/grafana-core: $(jq '.resources_status."pod/grafana-core"' data.json)
pod/jaeger: $(jq '.resources_status."pod/jaeger"' data.json)
pod/prometheus-core: $(jq '.resources_status."pod/prometheus-core"' data.json)
overall-status: $(jq '."overall-status"' data.json)
---" > test.md
mv test.md $filename.md
rm data.json
- name: Commit
uses: stefanzweifel/git-auto-commit-action@v4
with:
file_pattern: docs
commit_user_name: l5io
commit_user_email: ci@layer5.io
commit_author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
commit_options: '--signoff'
commit_message: '[Docs] Test status of adapter'