Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MTM-59397] As a plugin developer I want to have a workflow that will collect shell versions and run cypress tests against them #31

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
312 commits
Select commit Hold shift + click to select a range
b37fa0e
feat(test): test workflow run cypress
jdre-c8y Jun 21, 2024
4c7d379
feat(test): test workflow run cypress
jdre-c8y Jun 21, 2024
2e3bb16
feat(test): test workflow run cypress
jdre-c8y Jun 21, 2024
af86ee2
feat(datapoints-graph): refactor workflow to iterate over shells
jdre-c8y Jun 24, 2024
23fd2c1
feat(datapoints-graph): refactor workflow to iterate over shells
jdre-c8y Jun 24, 2024
a9b4b16
feat(datapoints-graph): refactor workflow to iterate over shells
jdre-c8y Jun 24, 2024
ed22ba0
feat(datapoints-graph): refactor workflow to iterate over shells
jdre-c8y Jun 24, 2024
562128d
feat(datapoints-graph): refactor collecting shell versions
jdre-c8y Jun 25, 2024
e23cd2c
feat(datapoints-graph): refactor using shell versions
jdre-c8y Jun 25, 2024
554ebd0
feat(datapoints-graph): refactor building plugins
jdre-c8y Jun 25, 2024
2f9e39a
feat(datapoints-graph): refactor building plugins
jdre-c8y Jun 25, 2024
f24fa8a
feat(datapoints-graph): refactor building plugins
jdre-c8y Jun 25, 2024
59ab109
feat(ci): rename workflow
jdre-c8y Jun 25, 2024
792e6a2
feat(ci): minor changes
jdre-c8y Jun 25, 2024
40a3155
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
87a629b
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
a85ee66
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
10e4abe
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
5e4e806
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
3692af6
Revert "feat(ci): workflow as separate yml files"
jdre-c8y Jun 25, 2024
65679ce
Revert "feat(ci): workflow as separate yml files"
jdre-c8y Jun 25, 2024
8241106
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
4d7859f
Revert "feat(ci): workflow as separate yml files"
jdre-c8y Jun 25, 2024
ae01ccf
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
aaea7e8
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
28b740e
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
5305782
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
29f83a3
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
a527924
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
1066f12
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
b3e52b8
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
3535891
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
f6b9020
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
a5a7b4b
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
f308b84
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
f8f77b9
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
f8ec012
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
17b93af
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
bd69696
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
ce95ed1
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
378c6d5
feat(ci): workflow as separate yml files
jdre-c8y Jun 25, 2024
66ab275
feat(core): package-lock.json updated
jdre-c8y Jun 25, 2024
56cc882
ci: adjust dependencies
reey Jun 25, 2024
06792cf
ci: bump nodejs version in workflows
reey Jun 25, 2024
be2abb9
ci: update dependencies
reey Jun 25, 2024
8bafdd4
feat(ci): workflow as separate yml files
jdre-c8y Jun 26, 2024
ae9ef24
Merge branch 'no-issue/move-to-ng-cli' into feat/MTM-59397-get-shell-…
jdre-c8y Jun 26, 2024
23ba325
feat(ci): dependencies fix
jdre-c8y Jun 26, 2024
89ca45f
feat(ci): switch back to one workflow file
jdre-c8y Jun 26, 2024
aa5790d
feat(ci): bump node version
jdre-c8y Jun 26, 2024
33acf50
ci: fix linting
reey Jun 26, 2024
47a2d25
ci: update actions
reey Jun 26, 2024
7289ef2
feat(ci): update actions
jdre-c8y Jun 26, 2024
53186f9
Merge branch 'no-issue/move-to-ng-cli' into feat/MTM-59397-get-shell-…
jdre-c8y Jun 26, 2024
32ebf4f
feat(ci): update actions
jdre-c8y Jun 26, 2024
abc80c2
feat(ci): update actions
jdre-c8y Jun 26, 2024
97f847f
feat(ci): update workflow not to use set-output
jdre-c8y Jun 26, 2024
7f3b90f
feat(ci): redundant command removed
jdre-c8y Jun 26, 2024
79283a7
Merge branch 'main' into feat/MTM-59397-get-shell-builds-and-run-cypr…
jdre-c8y Jun 28, 2024
8f747e8
feat(ci): packages update
jdre-c8y Jun 28, 2024
af45d13
feat(ci): tests external action
jdre-c8y Jul 1, 2024
acf34a5
feat(ci): hello world action
jdre-c8y Jul 1, 2024
e7af614
feat(ci): get shell app as js script
jdre-c8y Jul 1, 2024
0f273c9
feat(ci): collect shell versions from external action
jdre-c8y Jul 4, 2024
4e43be9
feat(ci): actions separated in external repo
jdre-c8y Jul 4, 2024
ff797d1
feat(ci): get shell app as action
jdre-c8y Jul 4, 2024
a03af54
feat(ci): get shell action input fix
jdre-c8y Jul 4, 2024
e6dea3e
feat(ci): remove external hello world action
jdre-c8y Jul 5, 2024
9a7fb63
feat(ci): step description fix
jdre-c8y Jul 5, 2024
dd2085c
feat(ci): collect shell versions refactor
jdre-c8y Jul 5, 2024
c7de648
feat(ci): get shell app script removed
jdre-c8y Jul 5, 2024
bf36301
feat(ci): collect versions include latest
jdre-c8y Jul 5, 2024
098cdcc
feat(ci): collect versions include latest
jdre-c8y Jul 5, 2024
39943a1
feat(ci): collect versions include latest
jdre-c8y Jul 5, 2024
1c64f89
feat(ci): collect versions versions length
jdre-c8y Jul 5, 2024
236f7be
feat(ci): collect versions length
jdre-c8y Jul 8, 2024
38394e8
feat(ci): collect versions length
jdre-c8y Jul 8, 2024
6a56e92
feat(ci): collect versions exact tags
jdre-c8y Jul 8, 2024
95ddea9
feat(ci): collect versions exact tags
jdre-c8y Jul 8, 2024
c75e265
feat(ci): collect versions exact tags
jdre-c8y Jul 8, 2024
17af174
feat(ci): collect versions length type check
jdre-c8y Jul 8, 2024
70d7621
feat(ci): get-shell-app
jdre-c8y Jul 8, 2024
f656673
feat(ci): get-shell-app
jdre-c8y Jul 8, 2024
01d845f
feat(ci): get-shell-app
jdre-c8y Jul 8, 2024
4b4b4d8
feat(ci): get-shell-app
jdre-c8y Jul 8, 2024
08d1e66
feat(ci): get-shell-app
jdre-c8y Jul 8, 2024
8f9910d
feat(ci): get-shell-app
jdre-c8y Jul 8, 2024
2808863
feat(ci): get-shell-app
jdre-c8y Jul 8, 2024
4dbadb2
feat(ci): no trailing comma in html
jdre-c8y Jul 8, 2024
2785c85
feat(ci): workflow linting
jdre-c8y Jul 9, 2024
8d848b5
feat(ci): add ^ to c8y packages
jdre-c8y Jul 9, 2024
27e1414
feat(ci): add ^ to c8y packages
jdre-c8y Jul 9, 2024
fde2ef9
feat(ci): bump c8y packages
jdre-c8y Jul 9, 2024
e0c15f4
feat(ci): fail-fast as false
jdre-c8y Jul 9, 2024
9852e99
feat(ci): fail-fast as false
jdre-c8y Jul 9, 2024
1494e9c
feat(datapoints-graph): datapoints graph refactor
jdre-c8y Jul 9, 2024
e8bab17
feat(datapoints-graph): todos removed
jdre-c8y Jul 9, 2024
b36dfe0
feat(datapoints-graph): todo removed
jdre-c8y Jul 9, 2024
ff9affa
feat(datapoints-graph): nightly workflow added
jdre-c8y Jul 9, 2024
0e6cf54
feat(ci): nightly workflow use cache
jdre-c8y Jul 9, 2024
dd4c856
Revert "feat(ci): nightly workflow use cache"
jdre-c8y Jul 10, 2024
51a649f
feat(ci): cache cypress tests result
jdre-c8y Jul 10, 2024
13eb0a0
feat(ci): cache cypress tests result
jdre-c8y Jul 10, 2024
7830d30
feat(ci): todo added to test cache
jdre-c8y Jul 10, 2024
3647970
feat(ci): caching e2e tests result refactor
jdre-c8y Jul 10, 2024
c16f9a4
feat(ci): caching e2e tests result refactor
jdre-c8y Jul 10, 2024
b74092e
feat(ci): caching e2e tests result refactor
jdre-c8y Jul 10, 2024
64f8308
feat(ci): add cron schedule to nightly test
jdre-c8y Jul 10, 2024
049f8ee
feat(ci): add cron schedule to nightly test
jdre-c8y Jul 10, 2024
a83a2a1
feat(ci): add cron schedule to nightly test
jdre-c8y Jul 10, 2024
0cc1ae8
feat(ci): add cron schedule to nightly test
jdre-c8y Jul 10, 2024
f787989
feat(ci): add cron schedule to nightly test
jdre-c8y Jul 10, 2024
3a34fce
feat(ci): add trigger to pull request test
jdre-c8y Jul 10, 2024
f5b34f0
feat(ci): merge pull request and nightly workflow to one
jdre-c8y Jul 10, 2024
393544a
feat(ci): workflow output cache test
jdre-c8y Jul 10, 2024
587ddb0
feat(ci): workflow output cache test
jdre-c8y Jul 10, 2024
edc0a37
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
fe80e3a
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
8e03b64
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
8ff80c4
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
ec31da7
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
5df3d31
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
fde34e6
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
ee836f9
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
04ba5a3
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
7302b9b
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
154f08a
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
fab4bbc
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
ebce5e8
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
c2ccf92
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
129d167
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
bbeb638
feat(ci): workflow output cache compare plugins version
jdre-c8y Jul 10, 2024
b50a7cb
feat(ci): pull-request workflow reverted
jdre-c8y Jul 11, 2024
14108bd
feat(ci): comments added and linting fixes
jdre-c8y Jul 11, 2024
46139f0
feat(datapoints-graph): cumulocity-cypress updates
thomaswinkler Jul 16, 2024
31f0356
feat(datapoints-graph): fixed authentication issue when mocking
thomaswinkler Jul 16, 2024
d5c6dcc
feat(datapoints-graph): tried to fix pull request workflow
thomaswinkler Jul 17, 2024
76f568d
feat(datapoints-graph): single datapoints-graph.cy.ts
thomaswinkler Jul 18, 2024
c7bee88
feat(ci): 1018 test fix
jdre-c8y Jul 19, 2024
1bfe86b
feat(ci): remove major property from workflow
jdre-c8y Jul 19, 2024
907cef0
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
f1b1de7
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
d769a96
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
0ab8e5b
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
5a81455
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
fe1e1ed
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
713fcd6
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
77154e6
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
cadc5bb
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
3591435
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
b4fdea1
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
8aa1916
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
ae5be53
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
2623f24
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
b0e47c6
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
2b28f26
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
e296166
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
ed27e06
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
8c3844f
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
d52fd49
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
cb702ed
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
44de56e
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
48ae4bf
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
b7ce0d9
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
0b3aa87
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
186dd8a
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
3db62a3
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
96c5fb4
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
d4ee421
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
37ed073
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
74a9053
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
f24bebd
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
9abe350
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
35e6fca
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
34c244b
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
7d133e7
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
f20feb6
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
2d19500
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
bad0f21
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
b2c670d
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
ed67ce1
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
0bde24b
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
5e5a1a1
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
cda030e
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
64e0bd5
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
9e63766
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
2e19d31
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
eba2e36
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
6a235cd
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
8252aa6
feat(ci): tests against shell workflow
jdre-c8y Jul 22, 2024
6371eb6
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
cca6fa7
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
4ac5e4a
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
25ae708
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
ed9b916
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
d3e7325
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
c123645
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
e46c8bd
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
2a15802
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
45a6d54
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
4b36def
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
a7d710d
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
8260a62
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
e8e65a7
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
4cce85b
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
45bb054
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
025523c
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
ba2d9b1
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
fd95e48
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
61acded
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
b7ebd87
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
dd1413f
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
51cf50f
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
4027170
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
a4e68c3
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
0cd276b
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
5ae0d79
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
e64d8fb
Revert "feat(ci): tests against shell workflow"
jdre-c8y Jul 23, 2024
50b1c94
Revert "Revert "feat(ci): tests against shell workflow""
jdre-c8y Jul 23, 2024
822de31
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
5dc5e1b
feat(ci): tests against shell workflow
jdre-c8y Jul 23, 2024
6a3f256
Revert "Revert "Revert "feat(ci): tests against shell workflow"""
jdre-c8y Jul 23, 2024
e9ba175
Merge pull request #35 from SoftwareAG/feat/MTM-59397-get-shell-build…
jdre-c8y Jul 23, 2024
1fa9f15
feat(datapoints-graph): always use english locale
thomaswinkler Jul 22, 2024
5dd74c1
feat(datapoints-graph): updated to use cumulocity-cypress 0.5.0
thomaswinkler Jul 25, 2024
ae057e7
feat(test): minor changes
jdre-c8y Jul 25, 2024
5c34613
feat(test): readme for cypress
jdre-c8y Jul 25, 2024
8d8a18c
feat(datapoints-graph): cypress-grep
thomaswinkler Jul 29, 2024
dbae605
feat(ci): grepTags env variables added
thomaswinkler Jul 29, 2024
8a0d6bd
feat(ci): start c8yctrl without recording
thomaswinkler Jul 29, 2024
807de74
feat(datapoints-graph): refactor
jdre-c8y Aug 1, 2024
820a321
feat(datapoints-graph): fetch mock system version
thomaswinkler Aug 2, 2024
05055bb
feat(datapoints-graph): fixed get/set system version
thomaswinkler Aug 2, 2024
95c6efc
feat(datapoints-graph): upgraded cumulocity-cypress
thomaswinkler Aug 2, 2024
dcc78f0
feat(datapoints-graph): log system version
thomaswinkler Aug 2, 2024
3ca049d
feat(datapoints-graph): fix system version for recording
thomaswinkler Aug 2, 2024
fb39767
feat(datapoints-graph): do not override system version from env
thomaswinkler Aug 5, 2024
ae09a5f
feat(datapoints-graph): cumulocity-cypress 0.5.2
thomaswinkler Aug 8, 2024
a72f6a3
fix(datapoints-graph): mocking without auth
thomaswinkler Aug 9, 2024
0b32cc5
feat(datapoints-graph): fixed run scripts
thomaswinkler Aug 9, 2024
0991fca
ci(test-plugins-against-cockpit): removed C8Y_SYSTEM_VERSION
thomaswinkler Aug 9, 2024
a870762
docs(datapoints-graph): updated doc
thomaswinkler Aug 9, 2024
b51ce18
refactor(tests): use cumulocity-cypress request
thomaswinkler Aug 9, 2024
b9b305a
feat(ci): scripts refactor. docs update
jdre-c8y Aug 12, 2024
86f6886
Merge branch 'main' into feat/MTM-59397-get-shell-builds-and-run-cypr…
jdre-c8y Aug 14, 2024
e4c6165
feat(ci): requires shell fix
jdre-c8y Aug 14, 2024
c3d6447
docs(test): describe repository setup
jdre-c8y Sep 4, 2024
a65aac9
docs(test): describe repository setup
jdre-c8y Sep 4, 2024
5df38a7
ci(test): test plugins against cockpit workflow refactor
jdre-c8y Sep 19, 2024
71589c0
ci(test): test plugins against cockpit comment added
jdre-c8y Sep 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,14 @@
"plugin:@angular-eslint/template/recommended",
"plugin:prettier/recommended" // <--- here we inherit from the recommended setup from eslint-plugin-prettier for HTML
],
"rules": {}
"rules": {
"prettier/prettier": [
"error",
{
"trailingComma": "none"
}
]
}
}
]
}
2 changes: 2 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@ jobs:

- name: Cypress run
uses: cypress-io/github-action@v5
env:
grepTags: '@noShell'
with:
start: npm run http-server
install: false
Expand Down
291 changes: 291 additions & 0 deletions .github/workflows/test-plugins-against-cockpit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,291 @@
name: Test plugins against Cockpit

on:
pull_request:
schedule:
- cron: '15 4 * * 1-5'

permissions:
contents: read
actions: write

env:
ACTIONS_STEP_DEBUG: true

jobs:
collect-shell-versions:
timeout-minutes: 30
runs-on: ubuntu-22.04
outputs:
shell_versions: ${{ steps.filter-versions.outputs.shell_versions }}
plugins_version: ${{ steps.extract-plugins-version.outputs.plugins_version }}

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1

- name: Collect Shell Versions
id: collect-shell-versions
uses: SoftwareAG/plugins-e2e-setup/collect-shell-versions@main

- name: Extract Plugins Version
id: extract-plugins-version
run: |
plugins_version=$(jq -r '.version' package.json)
echo "plugins_version=${plugins_version}" >> $GITHUB_ENV
echo "::set-output name=plugins_version::${plugins_version}"

- name: Retrieve cached JSON previous test results files
if: ${{ github.event_name == 'schedule' }}
id: retrieve-cache
uses: actions/cache/restore@v4
with:
path: ./cache-files
key: test-plugins-against-shell-e2e-results

- name: Verify cache contents
if: ${{ github.event_name == 'schedule' }}
run: |
echo "Contents of the cache:"
mkdir -p ./cache-files
ls -l ./cache-files
for file in ./cache-files/*; do
if [[ -f "$file" ]]; then
echo "Content of $file:"
cat "$file"
fi
done

- name: Filter out already tested versions and set shell_versions output # for pull_request event cache retrieval is omitted so no versions from step collect-shell-versions are filtered out
id: filter-versions
run: |
versions=$(jq -r '.[] | @base64' <<< '${{ steps.collect-shell-versions.outputs.shell_versions }}')
filtered_versions="[]"

for version in $versions; do
_jq() {
echo ${version} | base64 --decode | jq -r ${1}
}
tag=$(_jq '.tag')
ver=$(_jq '.version')
file="./cache-files/${tag}-${{ steps.extract-plugins-version.outputs.plugins_version }}.json"

if [[ -f "$file" ]]; then
echo "Cache file exists: $file"
alreadyTestedShellVersion=$(jq -r '.shellVersion' $file)
alreadyTestedPluginsVersion=$(jq -r '.pluginsVersion' $file)
if [[ "$alreadyTestedShellVersion" == "$ver" && "$alreadyTestedPluginsVersion" == "${{ steps.extract-plugins-version.outputs.plugins_version }}" ]]; then
echo "Shell version $alreadyTestedShellVersion with plugins of version $alreadyTestedPluginsVersion already tested. Skipping..."
continue
fi
else
echo "No cache file found for $tag with plugins version ${{ steps.extract-plugins-version.outputs.plugins_version }}"
fi

filtered_versions=$(jq --argjson ver "$(echo $version | base64 --decode)" '. + [$ver]' <<< $filtered_versions)
done

# Properly escape the output for GitHub Actions
filtered_versions_escaped=$(echo "$filtered_versions" | jq -c .)
echo "Filtered shell versions: $filtered_versions_escaped"
echo "::set-output name=shell_versions::$filtered_versions_escaped"

- name: Verify shell versions output
run: echo "Shell versions to test against ${{ steps.filter-versions.outputs.shell_versions }}"

build-plugins:
if: needs.collect-shell-versions.outputs.shell_versions != '[]'
needs: collect-shell-versions
timeout-minutes: 30
runs-on: ubuntu-22.04

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Build
run: npm run build

- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: build
if-no-files-found: error
retention-days: 5
path: |
dist/sag-pkg-community-plugins/**
jdre-c8y marked this conversation as resolved.
Show resolved Hide resolved

run-tests-against-shell:
if: needs.collect-shell-versions.outputs.shell_versions != '[]'
needs: [collect-shell-versions, build-plugins]
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
version_data: ${{ fromJson(needs.collect-shell-versions.outputs.shell_versions) }}
env:
JSON: ${{ toJson(matrix.version_data) }}
VERSION: ${{ matrix.version_data.version }}
TAG: ${{ matrix.version_data.tag }}
PLUGINS_VERSION: ${{ needs.collect-shell-versions.outputs.plugins_version }}

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Download build artifact
uses: actions/download-artifact@v4
with:
name: build
path: dist/apps/sag-pkg-community-plugins/ # download the build artifact to "dist/apps/" as whole dist folder will be served and url will match adopted scheme like "<base url>/apps/cockpit/index.html"

- name: Get shell app of particular version
uses: SoftwareAG/plugins-e2e-setup/get-shell-app@main
with:
shell-name: cockpit
shell-version: ${{ env.VERSION }}
shell-path: dist/apps

- name: Cypress run
uses: cypress-io/github-action@v5
with:
start: npm run cypress:ctrl
install: false
wait-on: 'http://localhost:4200/apps/cockpit/index.html'
browser: chrome
record: false
config-file: cypress.config.ts
env: C8Y_CTRL_MODE=mocking,grepTags=@shell

- name: Upload cypress screenshots
if: failure()
uses: actions/upload-artifact@v4
with:
retention-days: 5
name: cypress-screenshots
path: cypress/screenshots

- name: Upload cypress videos
if: always()
uses: actions/upload-artifact@v4
with:
retention-days: 5
name: cypress-videos
path: cypress/videos

- name: Create or update JSON file
if: ${{ github.event_name == 'schedule' }}
run: |
mkdir -p ./cache-files
file="./cache-files/${{ env.TAG }}-${{ env.PLUGINS_VERSION }}.json"
now=$(date --utc +"%Y-%m-%dT%H:%M:%SZ")
jq -n --arg shellVersion "${{ env.VERSION }}" --arg pluginsVersion "${{ env.PLUGINS_VERSION }}" --arg lastSuccess "$now" '{shellVersion: $shellVersion, pluginsVersion: $pluginsVersion, lastSuccess: $lastSuccess}' > $file
cat $file

- name: Upload updated JSON file
if: ${{ github.event_name == 'schedule' }}
uses: actions/upload-artifact@v4
with:
name: updated-json-${{ matrix.version_data.tag }}-${{ matrix.version_data.version }}-${{ env.PLUGINS_VERSION }}
path: ./cache-files/${{ env.TAG }}-${{ env.PLUGINS_VERSION }}.json

cache-upload:
permissions:
actions: write
if: ${{ github.event_name == 'schedule' && needs.collect-shell-versions.outputs.shell_versions != '[]' }}
needs: [collect-shell-versions, run-tests-against-shell]
runs-on: ubuntu-22.04
steps:
- name: Setup cache directory
run: mkdir -p ./cache-files

- name: Download updated JSON files
uses: actions/download-artifact@v4
with:
path: ./cache-files
pattern: updated-json-*
merge-multiple: true

- name: Log artifacts
run: |
echo "Listing contents of ./cache-files :"
ls -la ./cache-files

- name: Retrieve cached JSON files
id: check-cache
uses: actions/cache/restore@v4
with:
path: ./cache-files
key: test-plugins-against-shell-e2e-results

- name: Log all files
run: |
echo "Listing contents of ./cache-files :"
ls -la ./cache-files

- name: Delete previous cache # cache cannot be overridden therefore it has to be deleted and saved again
if: steps.check-cache.outputs.cache-hit == 'true'
run: |
gh extension install actions/gh-actions-cache
gh actions-cache delete test-plugins-against-shell-e2e-results --confirm -R ${{github.repository}}
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Save results to cache
uses: actions/cache/save@v4
with:
path: ./cache-files
key: test-plugins-against-shell-e2e-results

verify-cache:
if: ${{ github.event_name == 'schedule' && needs.collect-shell-versions.outputs.shell_versions != '[]' }}
needs:
[
collect-shell-versions,
build-plugins,
run-tests-against-shell,
cache-upload,
]
runs-on: ubuntu-22.04

steps:
- name: Retrieve cached JSON files
uses: actions/cache/restore@v4
with:
path: ./cache-files
key: test-plugins-against-shell-e2e-results

- name: Verify cache contents
run: |
echo "Contents of the cache:"
ls -l ./cache-files
for file in ./cache-files/*; do
if [[ -f "$file" ]]; then
echo "Content of $file:"
cat "$file"
fi
done
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# See http://help.github.com/ignore-files/ for more about ignoring files.

# env files
.env
cypress.env.json

# Compiled output
/dist
/tmp
Expand Down
3 changes: 2 additions & 1 deletion .prettierrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
{
"files": "*.html",
"options": {
"parser": "angular"
"parser": "angular",
"trailingComma": "none"
}
}
]
Expand Down
Loading
Loading