This repository has been archived by the owner on Sep 27, 2023. It is now read-only.
generated from meshery/meshery-adapter-template
-
Notifications
You must be signed in to change notification settings - Fork 47
131 lines (126 loc) · 4.75 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
130
131
name: E2E Test Meshery OSM Adapter
on:
push:
branches:
- "*"
tags:
- "v*"
paths-ignore:
- 'docs/**'
- '.github/**'
pull_request:
branches:
- "*"
release:
types: [published]
jobs:
SetPatternfile:
runs-on: ubuntu-latest
outputs:
sm_version: ${{ steps.gettag.outputs.release }}
adapter_version: ${{ env.version }}
steps:
- name: Checkout Code
uses: actions/checkout@master
- 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: openservicemesh/osm
excludes: prerelease, draft
- name: Change service mesh version in patternfile
run: |
yq e -i '.services.osm.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
TestOSM:
needs: SetPatternfile
uses: meshery/meshery/.github/workflows/test_adaptersv2.yaml@master
with:
expected_resources: osm-bootstrap,osm-controller,osm-injector
expected_resources_types: pod,pod,pod
expected_resources_namespaces: osm,osm,osm
deployment_url: https://raw.githubusercontent.com/meshery/meshery/master/install/deployment_yamls/k8s/meshery-osm-deployment.yaml
service_url: https://raw.githubusercontent.com/meshery/meshery/master/install/deployment_yamls/k8s/meshery-osm-service.yaml
adapter_name: osm
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: TestOSM
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@master
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-osm
cd ./docs/_compatibility/meshery-osm
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-osm
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: OSM
service-mesh-version: $(jq '.metadata.service_mesh_version' data.json)
tests:
pod/osm-bootstrap: $(jq '.resources_status."pod/osm-bootstrap"' data.json)
pod/osm-controller: $(jq '.resources_status."pod/osm-controller"' data.json)
pod/osm-injector: $(jq '.resources_status."pod/osm-injector"' 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: [email protected]
commit_author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
commit_options: '--signoff'
commit_message: '[Docs] Test status of adapter'