Compare commits

...

280 Commits

Author SHA1 Message Date
github-actions[bot]
70176e8e7f
Update versions-manifest (#200)
Some checks failed
CodeQL analysis / CodeQL analysis (push) Has been cancelled
Co-authored-by: Service account <no-reply@microsoft.com>
2025-03-13 22:09:00 -05:00
github-actions[bot]
b8e2e0988f
Update versions-manifest (#199)
Some checks failed
CodeQL analysis / CodeQL analysis (push) Failing after 0s
Validate manifest / manifest (push) Failing after 0s
Get Node versions / get-new-node-versions (push) Failing after 0s
Co-authored-by: Service account <no-reply@microsoft.com>
2025-02-20 22:07:32 -06:00
github-actions[bot]
6f7e07ce98
Update versions-manifest (#198)
Some checks failed
CodeQL analysis / CodeQL analysis (push) Failing after 0s
Get Node versions / get-new-node-versions (push) Failing after 0s
Validate manifest / manifest (push) Failing after 0s
Co-authored-by: Service account <no-reply@microsoft.com>
2025-02-11 21:57:10 -06:00
github-actions[bot]
759e7130a4
Update versions-manifest (#197)
Some checks are pending
CodeQL analysis / CodeQL analysis (push) Waiting to run
Co-authored-by: Service account <no-reply@microsoft.com>
2025-02-10 21:43:38 -06:00
github-actions[bot]
708c79f819
Update versions-manifest (#196)
Some checks failed
Validate manifest / manifest (push) Failing after 0s
Get Node versions / get-new-node-versions (push) Failing after 0s
CodeQL analysis / CodeQL analysis (push) Failing after 0s
Co-authored-by: Service account <no-reply@microsoft.com>
2025-01-22 10:26:28 -06:00
github-actions[bot]
ff0573dc52
Update versions-manifest (#195)
Some checks failed
CodeQL analysis / CodeQL analysis (push) Failing after 0s
Get Node versions / get-new-node-versions (push) Failing after 0s
Validate manifest / manifest (push) Failing after 0s
Co-authored-by: Service account <no-reply@microsoft.com>
2025-01-09 12:59:15 -06:00
github-actions[bot]
f3742acb8e
Update versions-manifest (#194)
Some checks failed
CodeQL analysis / CodeQL analysis (push) Failing after 0s
Get Node versions / get-new-node-versions (push) Failing after 0s
Validate manifest / manifest (push) Failing after 1s
Co-authored-by: Service account <no-reply@microsoft.com>
2024-12-04 09:56:04 -06:00
github-actions[bot]
b5d073fd75
Update versions-manifest (#193)
Some checks failed
CodeQL analysis / CodeQL analysis (push) Failing after 0s
Get Node versions / get-new-node-versions (push) Failing after 0s
Validate manifest / manifest (push) Failing after 0s
Co-authored-by: Service account <no-reply@microsoft.com>
2024-11-20 22:34:20 -06:00
github-actions[bot]
07972c08eb
Update versions-manifest (#192)
Some checks failed
CodeQL analysis / CodeQL analysis (push) Failing after 0s
Get Node versions / get-new-node-versions (push) Failing after 0s
Validate manifest / manifest (push) Failing after 0s
Co-authored-by: Service account <no-reply@microsoft.com>
2024-11-13 10:18:36 -06:00
github-actions[bot]
1089754c37
Update versions-manifest (#191)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-11-03 21:30:21 -06:00
github-actions[bot]
d0b553a9eb
Update versions-manifest (#190)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-10-17 11:15:27 -05:00
github-actions[bot]
09e0810728
Update versions-manifest (#189)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-10-07 11:23:01 -05:00
github-actions[bot]
83c0f2d854
Update versions-manifest (#188)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-09-18 09:50:38 -05:00
github-actions[bot]
1dda8b0c7d
Update versions-manifest (#187)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-09-04 07:22:46 -05:00
github-actions[bot]
a09329c1fa
Update versions-manifest (#186)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-08-23 09:29:44 -05:00
github-actions[bot]
75581b6027
Update versions-manifest (#185)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-08-22 10:42:10 -05:00
github-actions[bot]
bb9d406a6c
Update versions-manifest (#184)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-08-07 10:06:51 -05:00
github-actions[bot]
4638058663
Update versions-manifest (#183)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-07-25 08:35:31 -05:00
github-actions[bot]
c749aff12a
Update versions-manifest (#182) 2024-07-22 05:17:51 -05:00
github-actions[bot]
aacaf58011
Update versions-manifest (#181)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-07-18 08:42:01 -05:00
github-actions[bot]
5b159cbd4a
Update versions-manifest (#180)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-07-10 08:42:19 -05:00
gowridurgad
c8cf9cb4b5
Implementing Runner-Specific Node.js Tests (#178)
* Update Node.Tests.ps1

* Update Node.Tests.ps1

* Update Node.Tests.ps1

---------

Co-authored-by: aparnajyothi-y <147696841+aparnajyothi-y@users.noreply.github.com>
2024-07-09 10:01:27 -05:00
github-actions[bot]
3a7a3835dd
Update versions-manifest (#179)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-07-03 08:43:36 -05:00
github-actions[bot]
ec09b8ed02
Update versions-manifest (#177)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-06-23 23:47:07 -05:00
github-actions[bot]
22b86c61f6
Update versions-manifest (#175)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-06-20 08:23:31 -05:00
github-actions[bot]
ee011d651d
Update versions-manifest (#174)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-05-28 22:35:36 -05:00
github-actions[bot]
f33462c8a2
Update versions-manifest (#173)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-05-21 22:50:42 -05:00
github-actions[bot]
b8355a0fcc
Update versions-manifest (#172)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-05-15 23:15:04 -05:00
github-actions[bot]
d2561554de
Update versions-manifest (#171)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-05-09 21:55:32 -05:00
github-actions[bot]
ab329f0180
Update versions-manifest (#170)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-05-08 08:06:17 -05:00
github-actions[bot]
cb84d2280a
Update versions-manifest (#169)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-05-02 22:54:05 -05:00
github-actions[bot]
a26a00efbb
Update versions-manifest (#168)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-04-29 09:03:53 -05:00
github-actions[bot]
386b5d6f78
Update versions-manifest (#167)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-04-11 23:33:00 -05:00
github-actions[bot]
fb3241c6f2
Update versions-manifest (#166)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-04-04 07:57:21 -05:00
github-actions[bot]
c88b3f72e2
Update versions-manifest (#165)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-03-28 23:21:42 -05:00
github-actions[bot]
6c82900b55
Update versions-manifest (#164)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-02-14 22:16:19 -06:00
github-actions[bot]
de463ffcdb
Update versions-manifest (#163)
Co-authored-by: Service account <no-reply@microsoft.com>
2024-01-16 22:53:32 -06:00
github-actions[bot]
d51fc26ff7
Update versions-manifest (#161)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-11-30 10:29:00 +01:00
github-actions[bot]
fee25d72a2
Update versions-manifest (#160)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-11-23 17:15:39 +01:00
github-actions[bot]
bb598e8c31
Update versions-manifest (#159)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-11-08 13:55:10 +01:00
Dmitry Shibanov
a798c8ed46
add arch to installer script (#158) 2023-11-08 09:43:29 +01:00
github-actions[bot]
9d10c5b01a
Update versions-manifest (#157)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-11-07 14:49:26 +01:00
github-actions[bot]
a4a2f9a437
Update versions-manifest (#156)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-10-25 14:25:01 +02:00
github-actions[bot]
3d5333b8c1
Update versions-manifest (#155)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-10-16 10:32:12 +02:00
github-actions[bot]
897b0a01fc
Update versions-manifest (#154)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-10-11 17:06:12 +02:00
github-actions[bot]
605dcd4078
Update versions-manifest (#153)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-09-29 18:38:56 +02:00
Dmitry Shibanov
705d5d4eb2
update submodule (#152) 2023-09-22 15:03:46 +02:00
Marko Zivic
aa0c3a667a
Merge pull request #151 from actions/deprecation-policy
Add Support Notification Policy
2023-09-20 14:01:07 +02:00
Dusan Trickovic
989324aed0
Update README.md and Add Support Notification Policy 2023-09-20 12:46:02 +02:00
github-actions[bot]
59fe4e7639
Update versions-manifest (#150)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-09-19 13:13:15 +02:00
github-actions[bot]
5bebf2b61c
Update versions-manifest (#149)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-09-11 10:18:55 +02:00
github-actions[bot]
015a819882
Update versions-manifest (#148)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-09-06 11:04:31 +02:00
github-actions[bot]
bebc948c04
Update versions-manifest (#147)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-08-10 13:14:45 +02:00
github-actions[bot]
953fa628ab
Update versions-manifest (#146) 2023-07-21 13:07:50 +02:00
github-actions[bot]
ad868c9f05
Update versions-manifest (#145) 2023-07-19 10:33:15 +02:00
Marko Zivic
5136b584d3
Merge pull request #144 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/07/2023
2023-07-07 11:36:59 +02:00
Service account
217a0f2329 Update versions-manifest 2023-07-07 08:04:32 +00:00
github-actions[bot]
e1e54a94f4
Update versions-manifest (#143)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-06-30 17:10:24 +02:00
Dmitry Shibanov
802851f7e1
add arm for regex (#142) 2023-06-30 15:35:16 +02:00
github-actions[bot]
3985d2e8f1
Update versions-manifest (#141) 2023-06-22 15:44:04 +02:00
Dusan Trickovic
ed20ce4f29
Update helper submodule (#140) 2023-06-22 14:14:47 +02:00
github-actions[bot]
86f7959999
Update versions-manifest (#138)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-06-09 13:30:30 +02:00
github-actions[bot]
f9eb480338
Update versions-manifest (#137)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-05-16 19:47:07 +02:00
github-actions[bot]
fc05df56de
Update versions-manifest (#136)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-05-10 16:04:10 +02:00
Marko Zivic
97eefec78a
Merge pull request #135 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 05/04/2023
2023-05-04 17:06:38 +02:00
Service account
a646a40627 Update versions-manifest 2023-05-04 05:49:44 +00:00
github-actions[bot]
742347d102
Update versions-manifest (#134)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-04-26 16:20:44 +02:00
github-actions[bot]
c27b52d5a8
Update versions-manifest (#133)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-04-13 11:11:37 +02:00
github-actions[bot]
280ff21dab
Update versions-manifest (#132)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-03-30 16:00:04 +02:00
github-actions[bot]
d1c2cb96e1
Update versions-manifest (#131)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-03-08 12:24:40 +01:00
github-actions[bot]
d4215ec43e
Update versions-manifest (#130)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-02-22 10:16:53 +01:00
github-actions[bot]
9c020055eb
Update versions-manifest (#129)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-02-17 11:44:36 +01:00
github-actions[bot]
80f2e07bc4
Update versions-manifest (#128)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-02-03 09:37:28 +01:00
Ivan
2a3603b0e8
Update codeql-analysis workflow to use reusable workflow (#127) 2023-01-19 12:35:40 +01:00
github-actions[bot]
f3fac10826
Update versions-manifest (#126)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-01-06 11:41:30 +01:00
Marko Zivic
cfedc107f9
Merge pull request #125 from actions/update-codeowners
Update CODEOWNERS
2022-12-27 09:27:00 +01:00
Evgenii Korolevskii
a938f96cba
Update CODEOWNERS 2022-12-26 09:50:10 +01:00
github-actions[bot]
3e6fdaa9dd
Update versions-manifest (#121)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-12-15 10:51:33 +01:00
Marko Zivic
c8117e2a6f
Merge pull request #120 from MaksimZhukov/introduce-reusable-workflows
Update workflows to use reusable ones
2022-12-14 09:43:45 +01:00
MaksimZhukov
a3474c6453
Replaced the virtual-environments with the runner-images 2022-12-09 09:24:50 +01:00
MaksimZhukov
70b3a61620 Update workflows to use reusable ones 2022-12-06 18:37:54 +01:00
github-actions[bot]
5d308e3118
Update versions-manifest (#119) 2022-11-17 12:13:17 +01:00
github-actions[bot]
5ae9e2a880
Update versions-manifest (#117)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-10-26 13:57:28 +02:00
Alejandro Oviedo Cruz
85ccf2dd9b
Create codeql-analysis.yml (#100) 2022-10-19 11:13:52 +02:00
Mikhail Timofeev
1563799473
Merge pull request #116 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/29/2022
2022-09-29 09:08:34 +03:00
Service account
32e71c3c3b Update versions-manifest 2022-09-29 06:07:04 +00:00
Mikhail Timofeev
edcf67ef40
Merge pull request #115 from actions/update-versions-manifest-file 2022-09-24 11:36:18 +03:00
Service account
72d306dec2 Update versions-manifest 2022-09-24 06:44:51 +00:00
Mikhail Timofeev
7e8f83364e
Merge pull request #114 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/08/2022
2022-09-08 18:10:01 +03:00
Service account
d065c37c10 Update versions-manifest 2022-09-08 15:08:38 +00:00
Mikhail Timofeev
6f4ddf8c2c
Merge pull request #113 from actions/update-versions-manifest-file 2022-08-25 10:05:40 +03:00
Service account
deab417b89 Update versions-manifest 2022-08-25 05:35:18 +00:00
Mikhail Timofeev
46c45cb2bb
Merge pull request #112 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/22/2022
2022-08-22 12:17:09 +03:00
Service account
80d54cdc81 Update versions-manifest 2022-08-22 05:58:27 +00:00
Mikhail Timofeev
bcd6df9184
Merge pull request #111 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/27/2022
2022-07-27 13:42:51 +04:00
Service account
6751014c63 Update versions-manifest 2022-07-27 06:18:18 +00:00
Mikhail Timofeev
fe2adddc4d
Merge pull request #110 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/14/2022
2022-07-14 10:45:32 +04:00
Service account
4431f5baf6 Update versions-manifest 2022-07-14 06:43:23 +00:00
Mikhail Timofeev
4414c50507
Merge pull request #109 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/08/2022
2022-07-08 13:27:19 +04:00
Service account
5dd67ed7f9 Update versions-manifest 2022-07-08 04:05:56 +00:00
Mikhail Timofeev
ec00a6e346
Merge pull request #108 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 06/16/2022
2022-06-16 19:13:47 +04:00
Service account
6c2489748b Update versions-manifest 2022-06-16 15:11:37 +00:00
Mikhail Timofeev
7ee585b554
Merge pull request #107 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 06/02/2022
2022-06-02 10:30:46 +04:00
Service account
86a16e3fbc Update versions-manifest 2022-06-02 06:28:42 +00:00
Mikhail Timofeev
618e16944c
Merge pull request #106 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 05/18/2022
2022-05-18 14:53:19 +04:00
Service account
cc0c4db785 Update versions-manifest 2022-05-18 06:16:30 +00:00
Mikhail Timofeev
dd82515163
Merge pull request #105 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 05/05/2022
2022-05-05 08:20:35 +04:00
Service account
3f418bfd29 Update versions-manifest 2022-05-05 03:36:15 +00:00
Mikhail Timofeev
fd15ad763a
Merge pull request #104 from actions/update-versions-manifest-file 2022-05-03 20:39:02 +04:00
Service account
02a74240bb Update versions-manifest 2022-05-03 15:21:52 +00:00
Mikhail Timofeev
9b9e1bad68
Merge pull request #103 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 04/27/2022
2022-04-27 19:12:19 +04:00
Service account
e379f2ee0d Update versions-manifest 2022-04-27 15:11:31 +00:00
Mikhail Timofeev
e6e7799d67
Merge pull request #102 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 04/20/2022
2022-04-20 19:16:22 +04:00
Service account
11f6d8a2de Update versions-manifest 2022-04-20 06:39:56 +00:00
Mikhail Timofeev
b03ec2b334
Merge pull request #101 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 04/06/2022
2022-04-07 00:50:55 +04:00
Service account
41fdef674f Update versions-manifest 2022-04-06 15:53:44 +00:00
Mikhail Timofeev
bb5faa8461
Merge pull request #99 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 03/19/2022
2022-03-23 18:25:05 +04:00
Service account
914307fdad Update versions-manifest 2022-03-19 03:45:06 +00:00
Ethan Chiu
7a042473f1
Merge pull request #98 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 03/18/2022
2022-03-18 20:37:14 -07:00
Service account
46aed5d195 Update versions-manifest 2022-03-18 15:11:50 +00:00
Mikhail Timofeev
595b4b690a
Merge pull request #96 from actions/update-versions-manifest-file 2022-02-09 10:09:39 +03:00
Service account
29a273c108 Update versions-manifest 2022-02-09 07:04:15 +00:00
github-actions[bot]
bb9f13b224
Update versions-manifest (#95)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-02-02 10:45:06 +03:00
Mikhail Timofeev
453a014457
Merge pull request #94 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 02/01/2022
2022-02-01 18:15:22 +03:00
Service account
cf85dc514f Update versions-manifest 2022-02-01 15:07:09 +00:00
Mikhail Timofeev
8acc56fc1b
Merge pull request #93 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 01/11/2022
2022-01-11 12:01:20 +03:00
Service account
a034d4c79d Update versions-manifest 2022-01-11 07:26:45 +00:00
github-actions[bot]
7ce0e62855
Update versions-manifest (#92) 2021-12-17 13:38:11 +03:00
github-actions[bot]
ad4c15127c
Update versions-manifest (#91)
Co-authored-by: Service account <no-reply@microsoft.com>
2021-12-02 10:49:53 +03:00
github-actions[bot]
e60aab1337
Update versions-manifest (#90) 2021-12-01 12:41:44 +03:00
github-actions[bot]
fff8e8d2e7
Update versions-manifest (#89)
Co-authored-by: Service account <no-reply@microsoft.com>
2021-11-08 14:52:13 +03:00
Mikhail Timofeev
9439938c24
Merge pull request #88 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 10/26/2021
2021-10-26 19:39:32 +03:00
Service account
7efd2b6d9c Update versions-manifest 2021-10-26 16:38:38 +00:00
github-actions[bot]
9f1448d546
Update versions-manifest (#87) 2021-10-21 00:52:11 +03:00
Nikolay Frolov
d6c0f3407a
Uptake of the latest changes for helpers submodule (#85) 2021-10-14 16:57:05 +03:00
MaksimZhukov
7ee0eb6d7f
Merge pull request #86 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 10/13/2021
2021-10-13 10:21:22 +03:00
Service account
0e81926ec5 Update versions-manifest 2021-10-13 06:59:35 +00:00
Mikhail Timofeev
2b00037cf2
Merge pull request #84 from actions/update-versions-manifest-file 2021-10-09 12:29:51 +03:00
Service account
03a45f2d48 Update versions-manifest 2021-10-09 07:38:46 +00:00
MaksimZhukov
285c046a12
Merge pull request #83 from nikolai-frolov/helpers-update
Uptake of the latest changes for helpers submodule
2021-10-07 11:09:35 +03:00
Nikolay Frolov
d9cf0e3053 Uptake of the latest changes for helpers submodule 2021-10-06 18:32:12 +03:00
MaksimZhukov
d86ab03024
Merge pull request #82 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/28/2021
2021-09-29 00:16:52 +03:00
Service account
ad9cb45c2a Update versions-manifest 2021-09-28 15:50:27 +00:00
MaksimZhukov
aa33d265c4
Merge pull request #81 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/23/2021
2021-09-23 13:53:52 +03:00
Service account
58c3d40bb8 Update versions-manifest 2021-09-23 06:10:29 +00:00
MaksimZhukov
577e22bee8
Merge pull request #78 from Yuriy-Kukushkin/yk/add-workflow
Move manifest validation pipeline from Azure DevOps
2021-09-15 14:03:24 +03:00
Yuriy-Kukushkin
2200e9ff30
Updated event 2021-09-15 13:57:21 +03:00
Yuriy-Kukushkin
09f8ea5c48 Updated submodule 2021-09-15 10:54:58 +03:00
MaksimZhukov
d78f09bbe4
Merge pull request #80 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/11/2021
2021-09-11 15:44:18 +03:00
Service account
acea7cad3a Update versions-manifest 2021-09-11 12:40:39 +00:00
Yuriy-Kukushkin
3257340283
Added token 2021-09-09 18:00:01 +03:00
MaksimZhukov
833c6da64b
Merge pull request #79 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/08/2021
2021-09-08 11:41:37 +03:00
Service account
b2560ab6d9 Update versions-manifest 2021-09-08 06:34:29 +00:00
Yuriy-Kukushkin
84b6aaeb97
Added validate-manifest.yml 2021-09-02 12:59:53 +03:00
MaksimZhukov
b195064d9c
Merge pull request #77 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/31/2021
2021-08-31 18:47:14 +03:00
Service account
a72cfa7a7c Update versions-manifest 2021-08-31 15:46:05 +00:00
MaksimZhukov
63fc200ef6
Merge pull request #76 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/26/2021
2021-08-26 12:52:09 +03:00
Service account
ad4714dee5 Update versions-manifest 2021-08-26 09:49:17 +00:00
MaksimZhukov
0287ac915c
Merge pull request #75 from nikita-bykov/move-get-node-versions
Move get-node-versions pipeline from Azure DevOps
2021-08-26 12:43:40 +03:00
Nikita Bykov
5c5f144d08 Update helpers 2021-08-26 12:35:40 +03:00
Nikita Bykov
6e415f531b Update Send Slack notification step to send a custom message 2021-08-25 15:32:15 +03:00
Nikita Bykov
5a83490d4f Move get-node-versions pipeline 2021-08-23 14:40:35 +03:00
MaksimZhukov
e5e3b83d13
Merge pull request #74 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/18/2021
2021-08-18 09:46:51 +03:00
Service account
9405eaa89a Update versions-manifest 2021-08-18 06:40:05 +00:00
MaksimZhukov
947a3202c2
Merge pull request #73 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/12/2021
2021-08-12 10:47:34 +03:00
Service account
5edc6dfe71 Update versions-manifest 2021-08-12 07:02:26 +00:00
MaksimZhukov
c54f68be31
Merge pull request #72 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/03/2021
2021-08-03 11:35:47 +03:00
Service account
dcd9e83d63 Update versions-manifest 2021-08-03 08:34:24 +00:00
MaksimZhukov
e530a1172f
Merge pull request #71 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/30/2021
2021-07-30 10:32:53 +03:00
Service account
ee57453268 Update versions-manifest 2021-07-30 07:29:57 +00:00
MaksimZhukov
c0fad79083
Merge pull request #69 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/14/2021
2021-07-14 13:27:13 +03:00
Service account
484fa88a69 Update versions-manifest 2021-07-14 10:04:33 +00:00
MaksimZhukov
8c866dde54
Merge pull request #68 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/06/2021
2021-07-06 12:11:28 +03:00
Service account
334a8d1394 Update versions-manifest 2021-07-06 09:01:41 +00:00
Alena Sviridenko
72210eed7d
Merge pull request #67 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/05/2021
2021-07-05 19:52:57 +03:00
Service account
2b595e0a51 Update versions-manifest 2021-07-05 16:51:42 +00:00
Alena Sviridenko
7ac82af1b6
Merge pull request #65 from actions/update-versions-manifest-file 2021-07-02 08:50:21 +03:00
Service account
6d939f1dbe Update versions-manifest 2021-07-01 20:33:39 +00:00
Alena Sviridenko
2b6ee4852f
Merge pull request #64 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 06/23/2021
2021-06-23 16:42:04 +03:00
Service account
b3a2ff96e2 Update versions-manifest 2021-06-23 13:38:00 +00:00
Maxim Lobanov
0141b50275
Merge pull request #63 from actions/malob/add-lts-labels
Add support for LTS labels in node-versions manifest
2021-06-16 14:43:23 +03:00
Maxim Lobanov
7481b6b090 update submodules 2021-06-16 11:25:56 +00:00
Maxim Lobanov
4fcc8f116d add LTS labels 2021-06-16 09:43:50 +00:00
Alena Sviridenko
e5f055b1c1
Merge pull request #62 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 06/15/2021
2021-06-15 16:38:49 +03:00
Service account
34f35b5cb6 Update versions-manifest 2021-06-15 13:30:47 +00:00
Alena Sviridenko
e21cafedd8
Merge pull request #61 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 06/03/2021
2021-06-03 18:11:29 +03:00
Service account
b6e0bccc9f Update versions-manifest 2021-06-03 15:08:12 +00:00
MaksimZhukov
3e0c0eb0d6
Merge pull request #60 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 05/19/2021
2021-05-19 18:15:10 +03:00
Service account
62cc8fa6fb Update versions-manifest 2021-05-19 15:08:44 +00:00
MaksimZhukov
5fa4e704be
Merge pull request #59 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 05/12/2021
2021-05-12 09:27:44 +03:00
Service account
60911f3d0a Update versions-manifest 2021-05-12 06:15:55 +00:00
Mikhail Timofeev
1aa2fc42b8
Merge pull request #58 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 05/05/2021
2021-05-05 11:11:41 +03:00
Service account
6a059f6c80 Update versions-manifest 2021-05-05 07:17:54 +00:00
MaksimZhukov
48cfd035f5
Merge pull request #57 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 04/21/2021
2021-04-21 11:22:23 +03:00
Service account
4066cc83f8 Update versions-manifest 2021-04-21 08:14:47 +00:00
MaksimZhukov
2277f8c8a4
Merge pull request #56 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 04/07/2021
2021-04-07 09:49:47 +03:00
Service account
28cdbd7c2e Update versions-manifest 2021-04-07 06:35:11 +00:00
Maxim Lobanov
a0e1e3c90e
Merge pull request #55 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 03/30/2021
2021-03-30 18:19:27 +03:00
Service account
3716ed3c6e Update versions-manifest 2021-03-30 15:12:38 +00:00
Maxim Lobanov
6fd0e71a0a
Merge pull request #54 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 02/23/2021
2021-02-24 08:59:31 +03:00
Service account
5093d2b929 Update versions-manifest 2021-02-23 15:26:42 +00:00
Maxim Lobanov
2fa5a9904c
Merge pull request #53 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 02/11/2021
2021-02-11 09:45:06 +03:00
Service account
ab76c432fe Update versions-manifest 2021-02-11 06:38:54 +00:00
MaksimZhukov
ead568a146
Merge pull request #52 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 02/10/2021
2021-02-10 10:41:10 +03:00
Service account
6fdbc6deb3 Update versions-manifest 2021-02-10 07:36:27 +00:00
MaksimZhukov
69ae188e0e
Merge pull request #51 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 01/27/2021
2021-01-27 10:24:29 +03:00
Service account
75b1a9f3f2 Update versions-manifest 2021-01-27 06:23:21 +00:00
Maxim Lobanov
ea5fefae18
Merge pull request #50 from actions/add-codeowners
Create CODEOWNERS
2021-01-20 21:38:21 +03:00
Maxim Lobanov
8b33f33473
Update CODEOWNERS 2021-01-11 19:48:16 +03:00
Maxim Lobanov
d92adb7da1
Create CODEOWNERS 2021-01-08 12:32:59 +03:00
Maxim Lobanov
c2b002c470
Merge pull request #49 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 01/06/2021
2021-01-06 10:30:23 +03:00
Service account
649c1ec0c7 Update versions-manifest 2021-01-06 07:29:39 +00:00
MaksimZhukov
fbeb7d747d
Merge pull request #48 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 12/18/2020
2020-12-18 10:52:26 +03:00
Service account
445b5079f1 Update versions-manifest 2020-12-18 07:15:09 +00:00
MaksimZhukov
07c6e38e3e
Merge pull request #47 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 12/16/2020
2020-12-16 15:06:29 +03:00
Service account
805c28590c Update versions-manifest 2020-12-16 11:40:15 +00:00
Maxim Lobanov
72562f08b4
Merge pull request #46 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 11/25/2020
2020-11-25 11:49:50 +03:00
Service account
adde90d079 Update versions-manifest 2020-11-25 07:40:49 +00:00
Maxim Lobanov
6772ce992e
Merge pull request #45 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 11/17/2020
2020-11-17 21:12:15 +03:00
Service account
196a7ffaab Update versions-manifest 2020-11-17 18:02:52 +00:00
MaksimZhukov
5803dd40ce
Merge pull request #44 from MaksimZhukov/v-mazhuk/fix-powerhell-issue-with-paths
Fix PowerShell issue with relative paths
2020-11-17 20:54:45 +03:00
MaksimZhukov
15c3ac315a Fix powershell issue with paths 2020-11-17 19:54:37 +03:00
MaksimZhukov
4790533e80
Merge pull request #43 from MaksimZhukov/v-mazhuk/add-pull-request-event-trigger
Add ability to trigger packages generation on PRs
2020-11-03 15:14:48 +03:00
MaksimZhukov
c01749b1c4 Add ability to trigger packages generation on PRs 2020-11-02 15:38:27 +03:00
Maxim Lobanov
01407a89d3
Merge pull request #42 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 10/28/2020
2020-10-28 10:20:56 +03:00
Service account
ff6bcb4ec0 Update versions-manifest 2020-10-28 06:37:18 +00:00
MaksimZhukov
a229d53240
Merge pull request #41 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 10/16/2020
2020-10-16 18:22:35 +03:00
Service account
593745d7c2 Update versions-manifest 2020-10-16 15:09:09 +00:00
Maxim Lobanov
e459abbdbe
Merge pull request #40 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 10/08/2020
2020-10-08 09:42:19 +03:00
Service account
f01c560f7f Update versions-manifest 2020-10-08 06:36:38 +00:00
Alena Sviridenko
2b37bf1f1e
Merge pull request #39 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 10/07/2020
2020-10-07 11:18:42 +03:00
Service account
fe299f9388 Update versions-manifest 2020-10-07 08:17:04 +00:00
Alena Sviridenko
bbb4ceccb0
Merge pull request #37 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/30/2020
2020-09-30 18:10:00 +03:00
Service account
d8a00be11c Update versions-manifest 2020-09-30 07:13:33 +00:00
MaksimZhukov
cb6506c1cc
Merge pull request #36 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/23/2020
2020-09-23 13:23:49 +03:00
Service account
69c87ed4ce Update versions-manifest 2020-09-23 09:55:09 +00:00
MaksimZhukov
36757fae02
Merge pull request #35 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/16/2020
2020-09-16 11:15:04 +03:00
Service account
05026253f5 Update versions-manifest 2020-09-16 08:03:57 +00:00
MaksimZhukov
2da30901b3
Merge pull request #34 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/10/2020
2020-09-10 20:21:06 +03:00
Service account
d2b2d6cf72 Update versions-manifest 2020-09-10 17:12:45 +00:00
Dibir Magomedsaygitov
b6945a3f95
Merge pull request #33 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/09/2020
2020-09-09 10:45:59 +03:00
Service account
17f4719d01 Update versions-manifest 2020-09-09 07:42:57 +00:00
MaksimZhukov
19ff3f1812
Merge pull request #32 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/27/2020
2020-08-27 19:33:45 +03:00
Service account
6a38aba626 Update versions-manifest 2020-08-27 16:22:37 +00:00
MaksimZhukov
25173f9ae7
Merge pull request #31 from akv-platform/main
Migrate node-versions CI to GitHub Actions
2020-08-25 16:52:20 +03:00
MaksimZhukov
c52043a439 Get rid of azure-pipelines folder 2020-08-25 13:32:41 +03:00
MaksimZhukov
70f1fd4673
Merge pull request #2 from akv-platform/v-mazhuk/move-ci-to-actions
Move CI
2020-08-25 12:23:17 +03:00
MaksimZhukov
02194c5c42 Update helpers 2020-08-25 12:14:24 +03:00
MaksimZhukov
47471a527c Move defaults section 2020-08-25 11:45:06 +03:00
MaksimZhukov
978acceff5 Update to Pester 5 2020-08-24 20:07:31 +03:00
MaksimZhukov
ed56a19091 Remove Create-ArtifactDirectories function 2020-08-24 15:22:05 +03:00
MaksimZhukov
1a9656d766 Fix comments 2020-08-24 11:10:43 +03:00
MaksimZhukov
414a9c4d19 Move CI 2020-08-19 13:38:27 +03:00
MaksimZhukov
dea9e4ccea
Merge pull request #30 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/12/2020
2020-08-12 11:21:19 +03:00
Service account
070efd5a09 Update versions-manifest based on build from 20200812.4 2020-08-12 08:17:46 +00:00
Maxim Lobanov
60042303e5
Merge pull request #29 from actions/v-mazhuk/update-modules
Update Git submodule
2020-07-30 14:22:56 +03:00
MaksimZhukov
690c39139f Update Git submodule 2020-07-30 12:47:21 +03:00
Maxim Lobanov
dbc462f6f0
Merge pull request #28 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/30/2020
2020-07-30 09:04:09 +03:00
Service account
2d85084834 Update versions-manifest based on build from 20200730.1 2020-07-30 05:59:25 +00:00
Maxim Lobanov
71dc6cf704
Merge pull request #27 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/23/2020
2020-07-23 08:54:11 +03:00
Service account
2275f3fe19 Update versions-manifest based on build from 20200723.1 2020-07-23 05:43:29 +00:00
Maxim Lobanov
deeaedc1f4
Merge pull request #26 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/22/2020
2020-07-22 11:40:33 +03:00
Service account
82819ecf50 Update versions-manifest based on build from 20200722.2 2020-07-22 08:30:47 +00:00
Maxim Lobanov
73c7229556 Update README.md 2020-07-15 13:32:45 +03:00
Maxim Lobanov
a9761d076d
Merge pull request #24 from actions/v-malob/switch-master-to-main
Switch default branch from "master" to "main"
2020-07-14 16:41:07 +03:00
Maxim Lobanov
63f56e381c Update .gitmodules 2020-07-14 16:24:18 +03:00
Maxim Lobanov
9825d4703f update submodule 2020-07-14 14:52:22 +03:00
Maxim Lobanov
376bb1b4eb
Merge pull request #22 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 07/07/2020
2020-07-07 14:18:06 +03:00
Service account
f675396c66 Update versions-manifest based on build from 20200707.2 2020-07-07 10:07:35 +00:00
Maxim Lobanov
155e54b53a
Merge pull request #21 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 06/17/2020
2020-06-17 20:51:16 +03:00
Service account
46502ad44b Update versions-manifest based on build from 20200617.1 2020-06-17 17:35:14 +00:00
Maxim Lobanov
ac6a66a1ac
Merge pull request #20 from actions/update-versions-manifest-file
Upload Node.JS 14.4.0, 12.18.0, 10.21.0
2020-06-03 20:02:37 +03:00
Service account
ae3fa7b514 Update versions-manifest based on build from 20200603.3 2020-06-03 17:01:01 +00:00
Dmitry Shibanov
434ca92b37
Move helpers to submodule (#19)
* add common helpers

* minor changes

* remove from git helpers

* add submodules

* setup 4 version for pester

Co-authored-by: Dmitry Shibanov <v-dmshib@microsoft.com>
2020-06-02 18:21:42 +03:00
MaksimZhukov
7c335a2ccc
Merge pull request #17 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 05/26/2020
2020-05-26 20:24:14 +03:00
Service account
891863d663 Update versions-manifest based on build from 20200526.1 2020-05-26 17:13:44 +00:00
Maxim Lobanov
a60b759ec9
Add Node.js 14.3.0
[versions-manifest] Update for release from 05/21/2020
2020-05-21 10:59:18 +03:00
Service account
66ca3f81b9 Update versions-manifest based on build from 20200521.1 2020-05-21 04:53:50 +00:00
Maxim Lobanov
ae23532a5f
Merge pull request #15 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 05/07/2020
2020-05-07 11:35:46 +03:00
Service account
2ab95dc3b1 Update versions-manifest based on build from 20200507.101 2020-05-07 08:25:57 +00:00
31 changed files with 6667 additions and 1408 deletions

1
.github/CODEOWNERS vendored Normal file
View File

@ -0,0 +1 @@
* @actions/setup-actions-team

View File

@ -0,0 +1,31 @@
name: Generate Node.js packages
run-name: Generate Node.js ${{ inputs.VERSION || '18.12.0' }}
on:
workflow_dispatch:
inputs:
VERSION:
description: 'Node.js version to build and upload'
required: true
default: '18.12.0'
PUBLISH_RELEASES:
description: 'Whether to publish releases'
required: true
type: boolean
default: false
pull_request:
paths-ignore:
- 'versions-manifest.json'
- 'LICENSE'
- '**.md'
branches:
- 'main'
jobs:
node:
name: Node
uses: actions/versions-package-tools/.github/workflows/build-tool-packages.yml@main
with:
tool-name: "node"
tool-version: ${{ inputs.VERSION || '18.12.0' }}
publish-release: ${{ inputs.PUBLISH_RELEASES || false }}
secrets: inherit

14
.github/workflows/codeql-analysis.yml vendored Normal file
View File

@ -0,0 +1,14 @@
name: CodeQL analysis
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 3 * * 0'
jobs:
call-codeQL-analysis:
name: CodeQL analysis
uses: actions/reusable-workflows/.github/workflows/codeql-analysis.yml@main

10
.github/workflows/create-pr.yml vendored Normal file
View File

@ -0,0 +1,10 @@
name: Create Pull Request
on:
workflow_dispatch:
jobs:
create-pr:
uses: actions/versions-package-tools/.github/workflows/create-pr-to-update-manifest.yml@main
with:
tool-name: "node"
secrets: inherit

13
.github/workflows/get-node-versions.yml vendored Normal file
View File

@ -0,0 +1,13 @@
name: Get Node versions
on:
schedule:
- cron: '0 3,15 * * *'
workflow_dispatch:
jobs:
get-new-node-versions:
uses: actions/versions-package-tools/.github/workflows/get-new-tool-versions.yml@main
with:
tool-name: "Node"
image-url: "https://nodejs.org/static/images/logo-hexagon-card.png"
secrets: inherit

21
.github/workflows/validate-manifest.yml vendored Normal file
View File

@ -0,0 +1,21 @@
name: Validate manifest
on:
# The GITHUB_TOKEN secret is used to create a PR
# The pull_request event will not be triggered by it
# That's one of the reasons we need the schedule to validate the versions-manifest.json file
schedule:
- cron: '0 8,20 * * *'
workflow_dispatch:
pull_request:
branches:
- main
paths:
- 'versions-manifest.json'
jobs:
manifest:
uses: actions/versions-package-tools/.github/workflows/validate-manifest.yml@main
with:
tool-name: "Node"
image-url: "https://nodejs.org/static/images/logo-hexagon-card.png"
secrets: inherit

4
.gitmodules vendored Normal file
View File

@ -0,0 +1,4 @@
[submodule "helpers"]
path = helpers
url = https://github.com/actions/versions-package-tools
branch = main

View File

@ -29,22 +29,20 @@ Here are a few things you can do that will increase the likelihood of your pull
### Directory structure ### Directory structure
``` ```
├── azure-pipelines/ ├── .github/
| └──templates/ | └──workflows/
├── builders/ ├── builders/
├── helpers/ ├── helpers/
├── installers/ ├── installers/
└── tests/ └── tests/
└──sources/ └──sources/
``` ```
- `azure-pipelines*` - contains global YAML definitions for build pipelines. Reusable templates for specific jobs are located in `templates` subfolder. - `.github/workflows` - contains repository workflow files.
- `builders` - contains Node.js builder classes and functions. - `builders` - contains Node.js builder classes and functions.
- `helpers` - contains global helper functions and functions. - `helpers` - contains global helper classes and functions.
- `installers` - contains installation script templates. - `installers` - contains installation script templates.
- `tests` - contains test scripts. Required tests sources are located in `sources` subfolder. - `tests` - contains test scripts. Required tests sources are located in `sources` subfolder.
\* _We use Azure Pipelines because there are a few features that Actions is still missing, we'll move to Actions as soon as possible_.
## Resources ## Resources
- [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/) - [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)

View File

@ -1,15 +1,18 @@
# Node.js for Actions # Node.js for Actions
This repository contains the code and scripts that we use to prepare Node.js packages used in [virtual-environments](https://github.com/actions/virtual-environments) and accessible through the [setup-node](https://github.com/actions/setup-node) Action. This repository contains the code and scripts that we use to prepare Node.js packages used in [runner-images](https://github.com/actions/runner-images) and accessible through the [setup-node](https://github.com/actions/setup-node) Action.
The file [versions-manifest.json](./versions-manifest.json) contains the list of available and released versions. The file [versions-manifest.json](./versions-manifest.json) contains the list of available and released versions.
> Caution: this is prepared for and only permitted for use by actions `virtual-environments` and `setup-node` action. > Caution: this is prepared for and only permitted for use by actions `runner-images` and `setup-node` action.
**Status**: Currently under development and in use for beta and preview actions. This repo is undergoing rapid changes. **Status**: Currently under development and in use for beta and preview actions. This repo is undergoing rapid changes.
Latest of LTS versions will be installed on the [virtual-environments](https://github.com/actions/virtual-environments) images. Other versions will be pulled JIT using the [`setup-node`](https://github.com/actions/setup-node) action. Latest of LTS versions will be installed on the [runner-images](https://github.com/actions/runner-images) images. Other versions will be pulled JIT using the [`setup-node`](https://github.com/actions/setup-node) action.
## Adding new versions ## Adding new versions
We are trying to prepare packages for new versions of Node.js as soon as they are released. Please open an issue if any versions are missing. We are trying to prepare packages for new versions of Node.js as soon as they are released. Please open an issue in [actions/runner-images](https://github.com/actions/runner-images) if any versions are missing.
## Support Notification Policy
Beginning **approximately six months prior** to the removal of a Node.js version from the [versions-manifest.json](https://github.com/actions/node-versions/blob/main/versions-manifest.json) file, a pinned issue will be created in the [setup-node](https://github.com/actions/setup-node) repository. This pinned issue will provide important details about the upcoming end of support, including the specific date, as well as any other notes, relevant updates or alternatives. We encourage users to regularly check pinned issues for updates on tool versions they are using for maximum transparency, security, performance and overall compatibility with their projects.
## Contribution ## Contribution
Contributions are welcome! See [Contributor's Guide](./CONTRIBUTING.md) for more details about contribution process and code structure Contributions are welcome! See [Contributor's Guide](./CONTRIBUTING.md) for more details about contribution process and code structure

View File

@ -1,65 +0,0 @@
name: $(date:yyyyMMdd)$(rev:.r)-Node.js-$(VERSION)
trigger: none
pr:
autoCancel: true
branches:
include:
- master
paths:
exclude:
- versions-manifest.json
stages:
- stage: Build_Node_Darwin
dependsOn: []
variables:
Platform: darwin
Architecture: x64
jobs:
- template: /azure-pipelines/templates/build-job.yml
- stage: Test_Node_Darwin
condition: succeeded()
dependsOn: Build_Node_Darwin
variables:
VmImage: macOS-latest
Platform: darwin
Architecture: x64
jobs:
- template: /azure-pipelines/templates/test-job.yml
- stage: Build_Node_Linux
dependsOn: []
variables:
Platform: linux
Architecture: x64
jobs:
- template: /azure-pipelines/templates/build-job.yml
- stage: Test_Node_Linux
condition: succeeded()
dependsOn: Build_Node_Linux
variables:
VmImage: ubuntu-latest
Platform: linux
Architecture: x64
jobs:
- template: /azure-pipelines/templates/test-job.yml
- stage: Build_Node_Windows
dependsOn: []
variables:
Platform: win32
Architecture: x64
jobs:
- template: /azure-pipelines/templates/build-job.yml
- stage: Test_Node_Windows
condition: succeeded()
dependsOn: Build_Node_Windows
variables:
VmImage: windows-latest
Platform: win32
Architecture: x64
jobs:
- template: /azure-pipelines/templates/test-job.yml

View File

@ -1,21 +0,0 @@
jobs:
- job: Build_Node
timeoutInMinutes: 90
pool:
name: Azure Pipelines
vmImage: ubuntu-latest
steps:
- checkout: self
- task: PowerShell@2
displayName: 'Build Node $(Version)'
inputs:
targetType: filePath
filePath: './builders/build-node.ps1'
arguments: '-Version $(Version) -Platform $(Platform) -Architecture $(Architecture)'
- task: PublishPipelineArtifact@1
displayName: 'Publish Artifact: Node.js $(Version)'
inputs:
targetPath: '$(Build.ArtifactStagingDirectory)'
artifactName: 'node-$(Version)-$(Platform)-$(Architecture)'

View File

@ -1,78 +0,0 @@
jobs:
- job: Test_Node
pool:
name: Azure Pipelines
vmImage: $(VmImage)
steps:
- checkout: self
submodules: true
- task: PowerShell@2
displayName: Fully cleanup the toolcache directory before testing
inputs:
TargetType: inline
script: |
$NodeToolcachePath = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath "node"
if (Test-Path $NodeToolcachePath) {
Remove-Item -Path $NodeToolcachePath -Recurse -Force
}
- task: DownloadPipelineArtifact@2
inputs:
source: 'current'
artifact: 'node-$(Version)-$(Platform)-$(Architecture)'
path: $(Build.ArtifactStagingDirectory)
- task: ExtractFiles@1
inputs:
archiveFilePatterns: '$(Build.ArtifactStagingDirectory)/node-$(Version)-$(Platform)-$(Architecture).*'
destinationFolder: $(Build.BinariesDirectory)
cleanDestinationFolder: false
- task: PowerShell@2
displayName: 'Apply build artifact to the local machines'
inputs:
targetType: inline
script: |
if ("$(Platform)" -match 'win32') { powershell ./setup.ps1 } else { sh ./setup.sh }
workingDirectory: '$(Build.BinariesDirectory)'
- task: NodeTool@0
displayName: 'Use Node $(Version)'
inputs:
versionSpec: $(Version)
- task: PowerShell@2
displayName: 'Wait for the logs'
inputs:
targetType: inline
script: |
Write-Host "Fake step that do nothing"
Write-Host "We need it because log of previous step 'Use Node' is not available here yet."
Write-Host "In testing step (Node.Tests.ps1) we analyze build log of 'Use Node' task"
Write-Host "to determine if Node.js version was consumed from cache and was downloaded"
- task: PowerShell@2
displayName: 'Run tests'
inputs:
TargetType: inline
script: |
Install-Module Pester -Force -Scope CurrentUser
Import-Module Pester
$pesterParams = @{
Path="./Node.Tests.ps1";
Parameters=@{
Version="$(Version)";
}
}
Invoke-Pester -Script $pesterParams -OutputFile "test_results.xml" -OutputFormat NUnitXml
workingDirectory: '$(Build.SourcesDirectory)/tests'
- task: PublishTestResults@2
displayName: 'Publish test results'
inputs:
testResultsFiles: '*.xml'
testResultsFormat: NUnit
searchFolder: 'tests'
failTaskOnFailedTests: true
testRunTitle: "Node.js $(Version)-$(Platform)"
condition: always()

View File

@ -1,5 +1,5 @@
using module "./builders/win-node-builder.psm1" using module "./win-node-builder.psm1"
using module "./builders/nix-node-builder.psm1" using module "./nix-node-builder.psm1"
<# <#
.SYNOPSIS .SYNOPSIS

View File

@ -1,4 +1,4 @@
using module "./builders/node-builder.psm1" using module "./node-builder.psm1"
class NixNodeBuilder : NodeBuilder { class NixNodeBuilder : NodeBuilder {
<# <#
@ -54,7 +54,7 @@ class NixNodeBuilder : NodeBuilder {
$installationTemplateLocation = Join-Path -Path $this.InstallationTemplatesLocation -ChildPath $this.InstallationTemplateName $installationTemplateLocation = Join-Path -Path $this.InstallationTemplatesLocation -ChildPath $this.InstallationTemplateName
$installationTemplateContent = Get-Content -Path $installationTemplateLocation -Raw $installationTemplateContent = Get-Content -Path $installationTemplateLocation -Raw
$installationTemplateContent = $installationTemplateContent -f $this.Version.ToString(3) $installationTemplateContent = $installationTemplateContent -f $this.Version.ToString(3), $this.Architecture
$installationTemplateContent | Out-File -FilePath $installationScriptLocation $installationTemplateContent | Out-File -FilePath $installationScriptLocation
Write-Debug "Done; Installation script location: $installationScriptLocation)" Write-Debug "Done; Installation script location: $installationScriptLocation)"

View File

@ -16,10 +16,13 @@ class NodeBuilder {
The architecture with which Node.js should be built. The architecture with which Node.js should be built.
.PARAMETER TempFolderLocation .PARAMETER TempFolderLocation
The location of temporary files that will be used during Node.js package generation. Using system BUILD_STAGINGDIRECTORY variable value. The location of temporary files that will be used during Node.js package generation.
.PARAMETER ArtifactLocation .PARAMETER WorkFolderLocation
The location of generated Node.js artifact. Using system environment BUILD_BINARIESDIRECTORY variable value. The location of installation files.
.PARAMETER ArtifactFolderLocation
The location of generated Node.js artifact.
.PARAMETER InstallationTemplatesLocation .PARAMETER InstallationTemplatesLocation
The location of installation script template. Using "installers" folder from current repository. The location of installation script template. Using "installers" folder from current repository.
@ -40,9 +43,8 @@ class NodeBuilder {
$this.Architecture = $architecture $this.Architecture = $architecture
$this.TempFolderLocation = [IO.Path]::GetTempPath() $this.TempFolderLocation = [IO.Path]::GetTempPath()
$this.WorkFolderLocation = $env:BUILD_BINARIESDIRECTORY $this.WorkFolderLocation = Join-Path $env:RUNNER_TEMP "binaries"
$this.ArtifactFolderLocation = $env:BUILD_STAGINGDIRECTORY $this.ArtifactFolderLocation = Join-Path $env:RUNNER_TEMP "artifact"
$this.InstallationTemplatesLocation = Join-Path -Path $PSScriptRoot -ChildPath "../installers" $this.InstallationTemplatesLocation = Join-Path -Path $PSScriptRoot -ChildPath "../installers"
} }
@ -84,6 +86,10 @@ class NodeBuilder {
Generates Node.js artifact from downloaded binaries. Generates Node.js artifact from downloaded binaries.
#> #>
Write-Host "Create WorkFolderLocation and ArtifactFolderLocation folders"
New-Item -Path $this.WorkFolderLocation -ItemType "directory"
New-Item -Path $this.ArtifactFolderLocation -ItemType "directory"
Write-Host "Download Node.js $($this.Version) [$($this.Architecture)] executable..." Write-Host "Download Node.js $($this.Version) [$($this.Architecture)] executable..."
$binariesArchivePath = $this.Download() $binariesArchivePath = $this.Download()

View File

@ -1,4 +1,4 @@
using module "./builders/node-builder.psm1" using module "./node-builder.psm1"
class WinNodeBuilder : NodeBuilder { class WinNodeBuilder : NodeBuilder {
<# <#

View File

@ -0,0 +1,8 @@
{
"regex": "node-\\d+\\.\\d+\\.\\d+-(\\w+)-((x|arm)\\d+)",
"groups": {
"arch": 2,
"platform": 1
},
"lts_rule_expression": "(Invoke-RestMethod 'https://raw.githubusercontent.com/nodejs/Release/main/schedule.json').PSObject.Properties | Where-Object { $_.Value.codename } | ForEach-Object { @{ Name = $_.Name.TrimStart('v'); Value = $_.Value.codename } }"
}

1
helpers Submodule

@ -0,0 +1 @@
Subproject commit 6fbb1f0f2098254142702dba05fe75cd8e77c4ae

View File

@ -1,89 +0,0 @@
class AzureDevOpsApi
{
[string] $BaseUrl
[string] $RepoOwner
[object] $AuthHeader
AzureDevOpsApi(
[string] $TeamFoundationCollectionUri,
[string] $ProjectName,
[string] $AccessToken
) {
$this.BaseUrl = $this.BuildBaseUrl($TeamFoundationCollectionUri, $ProjectName)
$this.AuthHeader = $this.BuildAuth($AccessToken)
}
[object] hidden BuildAuth([string]$AccessToken) {
if ([string]::IsNullOrEmpty($AccessToken)) {
return $null
}
return @{
Authorization = "Bearer $AccessToken"
}
}
[string] hidden BuildBaseUrl([string]$TeamFoundationCollectionUri, [string]$ProjectName) {
return "${TeamFoundationCollectionUri}/${ProjectName}/_apis"
}
[object] QueueBuild([string]$ToolVersion, [string]$SourceBranch, [string]$SourceVersion, [UInt32]$DefinitionId){
$url = "build/builds"
# The content of parameters field should be a json string
$buildParameters = @{ VERSION = $ToolVersion } | ConvertTo-Json
$body = @{
definition = @{
id = $DefinitionId
}
sourceBranch = $SourceBranch
sourceVersion = $SourceVersion
parameters = $buildParameters
} | ConvertTo-Json
return $this.InvokeRestMethod($url, 'POST', $body)
}
[object] GetBuildInfo([UInt32]$BuildId){
$url = "build/builds/$BuildId"
return $this.InvokeRestMethod($url, 'GET', $null)
}
[string] hidden BuildUrl([string]$Url) {
return "$($this.BaseUrl)/${Url}/?api-version=5.1"
}
[object] hidden InvokeRestMethod(
[string] $Url,
[string] $Method,
[string] $Body
) {
$requestUrl = $this.BuildUrl($Url)
$params = @{
Method = $Method
ContentType = "application/json"
Uri = $requestUrl
Headers = @{}
}
if ($this.AuthHeader) {
$params.Headers += $this.AuthHeader
}
if (![string]::IsNullOrEmpty($body)) {
$params.Body = $Body
}
return Invoke-RestMethod @params
}
}
function Get-AzureDevOpsApi {
param (
[string] $TeamFoundationCollectionUri,
[string] $ProjectName,
[string] $AccessToken
)
return [AzureDevOpsApi]::New($TeamFoundationCollectionUri, $ProjectName, $AccessToken)
}

View File

@ -1,44 +0,0 @@
Import-Module (Join-Path $PSScriptRoot "azure-devops-api.ps1")
class BuildInfo
{
[AzureDevOpsApi] $AzureDevOpsApi
[String] $Name
[UInt32] $Id
[String] $Status
[String] $Result
[String] $Link
BuildInfo([AzureDevOpsApi] $AzureDevOpsApi, [object] $Build)
{
$this.AzureDevOpsApi = $AzureDevOpsApi
$this.Id = $Build.id
$this.Name = $Build.buildNumber
$this.Link = $Build._links.web.href
$this.Status = $Build.status
$this.Result = $Build.result
}
[boolean] IsFinished() {
return ($this.Status -eq "completed") -or ($this.Status -eq "cancelling")
}
[boolean] IsSuccess() {
return $this.Result -eq "succeeded"
}
[void] UpdateBuildInfo() {
$buildInfo = $this.AzureDevOpsApi.GetBuildInfo($this.Id)
$this.Status = $buildInfo.status
$this.Result = $buildInfo.result
}
}
function Get-BuildInfo {
param (
[AzureDevOpsApi] $AzureDevOpsApi,
[object] $Build
)
return [BuildInfo]::New($AzureDevOpsApi, $Build)
}

View File

@ -1,94 +0,0 @@
param (
[Parameter(Mandatory)] [string] $TeamFoundationCollectionUri,
[Parameter(Mandatory)] [string] $AzureDevOpsProjectName,
[Parameter(Mandatory)] [string] $AzureDevOpsAccessToken,
[Parameter(Mandatory)] [string] $SourceBranch,
[Parameter(Mandatory)] [string] $ToolVersions,
[Parameter(Mandatory)] [UInt32] $DefinitionId,
[string] $SourceVersion
)
Import-Module (Join-Path $PSScriptRoot "azure-devops-api.ps1")
Import-Module (Join-Path $PSScriptRoot "build-info.ps1")
function Queue-Builds {
param (
[Parameter(Mandatory)] [AzureDevOpsApi] $AzureDevOpsApi,
[Parameter(Mandatory)] [string] $ToolVersions,
[Parameter(Mandatory)] [string] $SourceBranch,
[Parameter(Mandatory)] [string] $SourceVersion,
[Parameter(Mandatory)] [string] $DefinitionId
)
[BuildInfo[]]$queuedBuilds = @()
$ToolVersions.Split(',') | ForEach-Object {
$version = $_.Trim()
Write-Host "Queue build for $version..."
$queuedBuild = $AzureDevOpsApi.QueueBuild($version, $SourceBranch, $SourceVersion, $DefinitionId)
$buildInfo = Get-BuildInfo -AzureDevOpsApi $AzureDevOpsApi -Build $queuedBuild
Write-Host "Queued build: $($buildInfo.Link)"
$queuedBuilds += $buildInfo
}
return $queuedBuilds
}
function Wait-Builds {
param (
[Parameter(Mandatory)] [BuildInfo[]] $Builds
)
$timeoutBetweenRefreshSec = 30
do {
# If build is still running - refresh its status
foreach($build in $builds) {
if (!$build.IsFinished()) {
$build.UpdateBuildInfo()
if ($build.IsFinished()) {
Write-Host "The $($build.Name) build was completed: $($build.Link)"
}
}
}
$runningBuildsCount = ($builds | Where-Object { !$_.IsFinished() }).Length
Start-Sleep -Seconds $timeoutBetweenRefreshSec
} while($runningBuildsCount -gt 0)
}
function Make-BuildsOutput {
param (
[Parameter(Mandatory)] [BuildInfo[]] $Builds
)
Write-Host "Builds info:"
$builds | Format-Table -AutoSize -Property Name,Id,Status,Result,Link | Out-String -Width 10000
# Return exit code based on status of builds
$failedBuilds = ($builds | Where-Object { !$_.IsSuccess() })
if ($failedBuilds.Length -ne 0) {
Write-Host "##vso[task.logissue type=error;]Builds failed"
$failedBuilds | ForEach-Object -Process { Write-Host "##vso[task.logissue type=error;]Name: $($_.Name); Link: $($_.Link)" }
Write-Host "##vso[task.complete result=Failed]"
} else {
Write-host "##[section] All builds have been passed successfully"
}
}
$azureDevOpsApi = Get-AzureDevOpsApi -TeamFoundationCollectionUri $TeamFoundationCollectionUri `
-ProjectName $AzureDevOpsProjectName `
-AccessToken $AzureDevOpsAccessToken
$queuedBuilds = Queue-Builds -AzureDevOpsApi $azureDevOpsApi `
-ToolVersions $ToolVersions `
-SourceBranch $SourceBranch `
-SourceVersion $SourceVersion `
-DefinitionId $DefinitionId
Write-Host "Waiting results of builds ..."
Wait-Builds -Builds $queuedBuilds
Make-BuildsOutput -Builds $queuedBuilds

View File

@ -1,106 +0,0 @@
<#
.SYNOPSIS
Create commit with all unstaged changes in repository and create pull-request
.PARAMETER RepositoryOwner
Required parameter. The organization which tool repository belongs
.PARAMETER RepositoryName
Optional parameter. The name of tool repository
.PARAMETER AccessToken
Required parameter. PAT Token to authorize
.PARAMETER BranchName
Required parameter. The name of branch where changes will be pushed
.PARAMETER CommitMessage
Required parameter. The commit message to push changes
.PARAMETER PullRequestTitle
Required parameter. The title of pull-request
.PARAMETER PullRequestBody
Required parameter. The description of pull-request
#>
param (
[Parameter(Mandatory)] [string] $RepositoryOwner,
[Parameter(Mandatory)] [string] $RepositoryName,
[Parameter(Mandatory)] [string] $AccessToken,
[Parameter(Mandatory)] [string] $BranchName,
[Parameter(Mandatory)] [string] $CommitMessage,
[Parameter(Mandatory)] [string] $PullRequestTitle,
[Parameter(Mandatory)] [string] $PullRequestBody
)
Import-Module (Join-Path $PSScriptRoot "github-api.psm1")
Import-Module (Join-Path $PSScriptRoot "git.psm1")
function Update-PullRequest {
Param (
[Parameter(Mandatory=$true)]
[object] $GitHubApi,
[Parameter(Mandatory=$true)]
[string] $Title,
[Parameter(Mandatory=$true)]
[string] $Body,
[Parameter(Mandatory=$true)]
[string] $BranchName,
[Parameter(Mandatory=$true)]
[object] $PullRequest
)
$updatedPullRequest = $GitHubApi.UpdatePullRequest($Title, $Body, $BranchName, $PullRequest.number)
if (($updatedPullRequest -eq $null) -or ($updatedPullRequest.html_url -eq $null)) {
Write-Host "##vso[task.logissue type=error;] Unexpected error occurs while updating pull request."
exit 1
}
Write-host "##[section] Pull request updated: $($updatedPullRequest.html_url)"
}
function Create-PullRequest {
Param (
[Parameter(Mandatory=$true)]
[object] $GitHubApi,
[Parameter(Mandatory=$true)]
[string] $Title,
[Parameter(Mandatory=$true)]
[string] $Body,
[Parameter(Mandatory=$true)]
[string] $BranchName
)
$createdPullRequest = $GitHubApi.CreateNewPullRequest($Title, $Body, $BranchName)
if (($createdPullRequest -eq $null) -or ($createdPullRequest.html_url -eq $null)) {
Write-Host "##vso[task.logissue type=error;] Unexpected error occurs while creating pull request."
exit 1
}
Write-host "##[section] Pull request created: $($createdPullRequest.html_url)"
}
Write-Host "Configure local git preferences"
Git-ConfigureUser -Name "Service account" -Email "no-reply@microsoft.com"
Write-Host "Create branch: $BranchName"
Git-CreateBranch -Name $BranchName
Write-Host "Create commit"
Git-CommitAllChanges -Message $CommitMessage
Write-Host "Push branch: $BranchName"
Git-PushBranch -Name $BranchName -Force $true
$gitHubApi = Get-GitHubApi -AccountName $RepositoryOwner -ProjectName $RepositoryName -AccessToken $AccessToken
$pullRequest = $gitHubApi.GetPullRequest($BranchName, $RepositoryOwner)
if ($pullRequest.Count -gt 0) {
Write-Host "Update pull request"
Update-PullRequest -GitHubApi $gitHubApi `
-Title $PullRequestTitle `
-Body $PullRequestBody `
-BranchName $BranchName `
-PullRequest $pullRequest[0]
} else {
Write-Host "Create pull request"
Create-PullRequest -GitHubApi $gitHubApi `
-Title $PullRequestTitle `
-Body $PullRequestBody `
-BranchName $BranchName
}

View File

@ -1,81 +0,0 @@
<#
.SYNOPSIS
Configure git credentials to use with commits
#>
function Git-ConfigureUser {
Param (
[Parameter(Mandatory=$true)]
[string] $Name,
[Parameter(Mandatory=$true)]
[string] $Email
)
git config --global user.name $Name | Out-Host
git config --global user.email $Email | Out-Host
if ($LASTEXITCODE -ne 0) {
Write-Host "##vso[task.logissue type=error;] Unexpected failure occurs while configuring git preferences."
exit 1
}
}
<#
.SYNOPSIS
Create new branch
#>
function Git-CreateBranch {
Param (
[Parameter(Mandatory=$true)]
[string] $Name
)
git checkout -b $Name | Out-Host
if ($LASTEXITCODE -ne 0) {
Write-Host "##vso[task.logissue type=error;] Unexpected failure occurs while creating new branch: $Name."
exit 1
}
}
<#
.SYNOPSIS
Commit all staged and unstaged changes
#>
function Git-CommitAllChanges {
Param (
[Parameter(Mandatory=$true)]
[string] $Message
)
git add -A | Out-Host
git commit -m "$Message" | Out-Host
if ($LASTEXITCODE -ne 0) {
Write-Host "##vso[task.logissue type=error;] Unexpected failure occurs while commiting changes."
exit 1
}
}
<#
.SYNOPSIS
Push branch to remote repository
#>
function Git-PushBranch {
Param (
[Parameter(Mandatory=$true)]
[string] $Name,
[Parameter(Mandatory=$true)]
[boolean] $Force
)
if ($Force) {
git push --set-upstream origin $Name --force | Out-Host
} else {
git push --set-upstream origin $Name | Out-Host
}
if ($LASTEXITCODE -ne 0) {
Write-Host "##vso[task.logissue type=error;] Unexpected failure occurs while pushing changes."
exit 1
}
}

View File

@ -1,126 +0,0 @@
<#
.SYNOPSIS
The module that contains a bunch of methods to interact with GitHub API V3
#>
class GitHubApi
{
[string] $BaseUrl
[string] $RepoOwner
[object] $AuthHeader
GitHubApi(
[string] $AccountName,
[string] $ProjectName,
[string] $AccessToken
) {
$this.BaseUrl = $this.BuildBaseUrl($AccountName, $ProjectName)
$this.AuthHeader = $this.BuildAuth($AccessToken)
}
[object] hidden BuildAuth([string]$AccessToken) {
if ([string]::IsNullOrEmpty($AccessToken)) {
return $null
}
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes("'':${AccessToken}"))
return @{
Authorization = "Basic ${base64AuthInfo}"
}
}
[string] hidden BuildBaseUrl([string]$RepositoryOwner, [string]$RepositoryName) {
return "https://api.github.com/repos/$RepositoryOwner/$RepositoryName"
}
[object] CreateNewPullRequest([string]$Title, [string]$Body, [string]$BranchName){
$requestBody = @{
title = $Title
body = $Body
head = $BranchName
base = "master"
} | ConvertTo-Json
$url = "pulls"
return $this.InvokeRestMethod($url, 'Post', $null, $requestBody)
}
[object] GetPullRequest([string]$BranchName, [string]$RepositoryOwner){
$url = "pulls"
return $this.InvokeRestMethod($url, 'GET', "head=${RepositoryOwner}:$BranchName&base=master", $null)
}
[object] UpdatePullRequest([string]$Title, [string]$Body, [string]$BranchName, [string]$PullRequestNumber){
$requestBody = @{
title = $Title
body = $Body
head = $BranchName
base = "master"
} | ConvertTo-Json
$url = "pulls/$PullRequestNumber"
return $this.InvokeRestMethod($url, 'Post', $null, $requestBody)
}
[array] GetReleases(){
$url = "releases"
$releases = @()
$pageNumber = 1
$releaseNumberLimit = 10000
while ($releases.Count -le $releaseNumberLimit)
{
$requestParams = "page=${pageNumber}&per_page=100"
[array] $response = $this.InvokeRestMethod($url, 'GET', $requestParams, $null)
if ($response.Count -eq 0) {
break
} else {
$releases += $response
$pageNumber++
}
}
return $releases
}
[string] hidden BuildUrl([string]$Url, [string]$RequestParams) {
if ([string]::IsNullOrEmpty($RequestParams)) {
return "$($this.BaseUrl)/$($Url)"
} else {
return "$($this.BaseUrl)/$($Url)?$($RequestParams)"
}
}
[object] hidden InvokeRestMethod(
[string] $Url,
[string] $Method,
[string] $RequestParams,
[string] $Body
) {
$requestUrl = $this.BuildUrl($Url, $RequestParams)
$params = @{
Method = $Method
ContentType = "application/json"
Uri = $requestUrl
Headers = @{}
}
if ($this.AuthHeader) {
$params.Headers += $this.AuthHeader
}
if (![string]::IsNullOrEmpty($Body)) {
$params.Body = $Body
}
return Invoke-RestMethod @params
}
}
function Get-GitHubApi {
param (
[string] $AccountName,
[string] $ProjectName,
[string] $AccessToken
)
return [GitHubApi]::New($AccountName, $ProjectName, $AccessToken)
}

View File

@ -1,32 +0,0 @@
<#
.SYNOPSIS
Unpack *.tar file
#>
function Extract-TarArchive {
param(
[Parameter(Mandatory=$true)]
[String]$ArchivePath,
[Parameter(Mandatory=$true)]
[String]$OutputDirectory
)
Write-Debug "Extract $ArchivePath to $OutputDirectory"
tar -C $OutputDirectory -xzf $ArchivePath --strip 1
}
function Create-TarArchive {
param(
[Parameter(Mandatory=$true)]
[String]$SourceFolder,
[Parameter(Mandatory=$true)]
[String]$ArchivePath,
[string]$CompressionType = "gz"
)
$CompressionTypeArgument = If ([string]::IsNullOrWhiteSpace($CompressionType)) { "" } else { "--${CompressionType}" }
Push-Location $SourceFolder
Write-Debug "tar -c $CompressionTypeArgument -f $ArchivePath ."
tar -c $CompressionTypeArgument -f $ArchivePath .
Pop-Location
}

View File

@ -1,158 +0,0 @@
<#
.SYNOPSIS
Generate versions manifest based on repository releases
.DESCRIPTION
Versions manifest is needed to find the latest assets for particular version of tool
.PARAMETER GitHubRepositoryOwner
Required parameter. The organization which tool repository belongs
.PARAMETER GitHubRepositoryName
Optional parameter. The name of tool repository
.PARAMETER GitHubAccessToken
Required parameter. PAT Token to overcome GitHub API Rate limit
.PARAMETER OutputFile
Required parameter. File "*.json" where generated results will be saved
.PARAMETER PlatformMapFile
Optional parameter. Path to the json file with platform map
Structure example:
{
"macos-1014": [
{
"platform": "darwin",
"platform_version": "10.14"
}, ...
], ...
}
#>
param (
[Parameter(Mandatory)] [string] $GitHubRepositoryOwner,
[Parameter(Mandatory)] [string] $GitHubRepositoryName,
[Parameter(Mandatory)] [string] $GitHubAccessToken,
[Parameter(Mandatory)] [string] $OutputFile,
[string] $PlatformMapFile
)
Import-Module (Join-Path $PSScriptRoot "../github/github-api.psm1")
if ($PlatformMapFile -and (Test-Path $PlatformMapFile)) {
$PlatformMap = Get-Content $PlatformMapFile -Raw | ConvertFrom-Json -AsHashtable
} else {
$PlatformMap = @{}
}
function Get-FileNameWithoutExtension {
param (
[Parameter(Mandatory)][string]$Filename
)
if ($Filename.EndsWith(".tar.gz")) {
$Filename = [IO.path]::GetFileNameWithoutExtension($Filename)
}
return [IO.path]::GetFileNameWithoutExtension($Filename)
}
function New-AssetItem {
param (
[Parameter(Mandatory)][string]$Filename,
[Parameter(Mandatory)][string]$DownloadUrl,
[Parameter(Mandatory)][string]$Arch,
[Parameter(Mandatory)][string]$Platform,
[string]$PlatformVersion
)
$asset = New-Object PSObject
$asset | Add-Member -Name "filename" -Value $Filename -MemberType NoteProperty
$asset | Add-Member -Name "arch" -Value $Arch -MemberType NoteProperty
$asset | Add-Member -Name "platform" -Value $Platform -MemberType NoteProperty
if ($PlatformVersion) { $asset | Add-Member -Name "platform_version" -Value $PlatformVersion -MemberType NoteProperty }
$asset | Add-Member -Name "download_url" -Value $DownloadUrl -MemberType NoteProperty
return $asset
}
function Build-AssetsList {
param (
[AllowEmptyCollection()]
[Parameter(Mandatory)][array]$ReleaseAssets
)
$assets = @()
foreach($releaseAsset in $ReleaseAssets) {
$filename = Get-FileNameWithoutExtension -Filename $releaseAsset.name
$parts = $filename.Split("-")
$arch = $parts[-1]
$buildPlatform = [string]::Join("-", $parts[2..($parts.Length-2)])
if ($PlatformMap[$buildPlatform]) {
$PlatformMap[$buildPlatform] | ForEach-Object {
$assets += New-AssetItem -Filename $releaseAsset.name `
-DownloadUrl $releaseAsset.browser_download_url `
-Arch $arch `
-Platform $_.platform `
-PlatformVersion $_.platform_version
}
} else {
$assets += New-AssetItem -Filename $releaseAsset.name `
-DownloadUrl $releaseAsset.browser_download_url `
-Arch $arch `
-Platform $buildPlatform
}
}
return $assets
}
function Get-VersionFromRelease {
param (
[Parameter(Mandatory)][object]$Release
)
# Release name can contain additional information after ':' so filter it
[string]$releaseName = $Release.name.Split(':')[0]
[Version]$version = $null
if (![Version]::TryParse($releaseName, [ref]$version)) {
throw "Release '$($Release.id)' has invalid title '$($Release.name)'. It can't be parsed as version. ( $($Release.html_url) )"
}
return $version
}
function Build-VersionsManifest {
param (
[Parameter(Mandatory)][array]$Releases
)
$Releases = $Releases | Sort-Object -Property "published_at" -Descending
$versionsHash = @{}
foreach ($release in $Releases) {
if (($release.draft -eq $true) -or ($release.prerelease -eq $true)) {
continue
}
[Version]$version = Get-VersionFromRelease $release
$versionKey = $version.ToString()
if ($versionsHash.ContainsKey($versionKey)) {
continue
}
$versionsHash.Add($versionKey, [PSCustomObject]@{
version = $versionKey
stable = $true
release_url = $release.html_url
files = Build-AssetsList $release.assets
})
}
# Sort versions by descending
return $versionsHash.Values | Sort-Object -Property @{ Expression = { [Version]$_.version }; Descending = $true }
}
$gitHubApi = Get-GitHubApi -AccountName $GitHubRepositoryOwner -ProjectName $GitHubRepositoryName -AccessToken $GitHubAccessToken
$releases = $gitHubApi.GetReleases()
$versionIndex = Build-VersionsManifest $releases
$versionIndex | ConvertTo-Json -Depth 5 | Out-File $OutputFile -Encoding UTF8NoBOM -Force

View File

@ -1,33 +0,0 @@
<#
.SYNOPSIS
Pester extension that allows to run command and validate exit code
.EXAMPLE
"python file.py" | Should -ReturnZeroExitCode
#>
function ShouldReturnZeroExitCode {
Param(
[Parameter (Mandatory = $true)] [ValidateNotNullOrEmpty()]
[String]$ActualValue,
[switch]$Negate
)
Write-Host "Run command '${ActualValue}'"
Invoke-Expression -Command $ActualValue | ForEach-Object { Write-Host $_ }
$actualExitCode = $LASTEXITCODE
[bool]$succeeded = $actualExitCode -eq 0
if ($Negate) { $succeeded = -not $succeeded }
if (-not $succeeded)
{
$failureMessage = "Command '${ActualValue}' has finished with exit code ${actualExitCode}"
}
return New-Object PSObject -Property @{
Succeeded = $succeeded
FailureMessage = $failureMessage
}
}
Add-AssertionOperator -Name ReturnZeroExitCode `
-Test $function:ShouldReturnZeroExitCode

View File

@ -1,34 +0,0 @@
<#
.SYNOPSIS
Unpack *.7z file
#>
function Extract-SevenZipArchive {
param(
[Parameter(Mandatory=$true)]
[String]$ArchivePath,
[Parameter(Mandatory=$true)]
[String]$OutputDirectory
)
Write-Debug "Extract $ArchivePath to $OutputDirectory"
7z x $ArchivePath -o"$OutputDirectory" -y | Out-Null
}
function Create-SevenZipArchive {
param(
[Parameter(Mandatory=$true)]
[String]$SourceFolder,
[Parameter(Mandatory=$true)]
[String]$ArchivePath,
[String]$ArchiveType = "zip",
[String]$CompressionLevel = 5
)
$ArchiveTypeArgument = "-t${ArchiveType}"
$CompressionLevelArgument = "-mx=${CompressionLevel}"
Push-Location $SourceFolder
Write-Debug "7z a $ArchiveTypeArgument $CompressionLevelArgument $ArchivePath @$SourceFolder"
7z a $ArchiveTypeArgument $CompressionLevelArgument $ArchivePath $SourceFolder\*
Pop-Location
}

View File

@ -1,10 +1,11 @@
set -e set -e
NODE_VERSION={0} NODE_VERSION={0}
ARCH={1}
NODE_TOOLCACHE_PATH=$AGENT_TOOLSDIRECTORY/node NODE_TOOLCACHE_PATH=$AGENT_TOOLSDIRECTORY/node
NODE_TOOLCACHE_VERSION_PATH=$NODE_TOOLCACHE_PATH/$NODE_VERSION NODE_TOOLCACHE_VERSION_PATH=$NODE_TOOLCACHE_PATH/$NODE_VERSION
NODE_TOOLCACHE_VERSION_ARCH_PATH=$NODE_TOOLCACHE_VERSION_PATH/x64 NODE_TOOLCACHE_VERSION_ARCH_PATH=$NODE_TOOLCACHE_VERSION_PATH/$ARCH
echo "Check if Node.js hostedtoolcache folder exist..." echo "Check if Node.js hostedtoolcache folder exist..."
if [ ! -d $NODE_TOOLCACHE_PATH ]; then if [ ! -d $NODE_TOOLCACHE_PATH ]; then
@ -22,4 +23,4 @@ cp -R ./* $NODE_TOOLCACHE_VERSION_ARCH_PATH
rm $NODE_TOOLCACHE_VERSION_ARCH_PATH/setup.sh rm $NODE_TOOLCACHE_VERSION_ARCH_PATH/setup.sh
echo "Create complete file" echo "Create complete file"
touch $NODE_TOOLCACHE_VERSION_PATH/x64.complete touch $NODE_TOOLCACHE_VERSION_PATH/$ARCH.complete

View File

@ -1,43 +1,58 @@
param ( Import-Module (Join-Path $PSScriptRoot "../helpers/pester-extensions.psm1")
[Version] [Parameter (Mandatory = $true)] [ValidateNotNullOrEmpty()]
$Version
)
Import-Module (Join-Path $PSScriptRoot "../helpers/packages-generation/pester-extensions.psm1")
Describe "Node.js" {
BeforeAll {
function Get-UseNodeLogs { function Get-UseNodeLogs {
$logsFolderPath = Join-Path -Path $env:AGENT_HOMEDIRECTORY -ChildPath "_diag" | Join-Path -ChildPath "pages" # GitHub Windows images don't have `HOME` variable
$homeDir = $env:HOME ?? $env:HOMEDRIVE
$logsFolderPath = Join-Path -Path $homeDir -ChildPath "runners/*/_diag/pages" -Resolve
$useNodeLogFile = Get-ChildItem -Path $logsFolderPath | Where-Object { $useNodeLogFile = Get-ChildItem -Path $logsFolderPath | Where-Object {
$logContent = Get-Content $_.Fullname -Raw $logContent = Get-Content $_.Fullname -Raw
return $logContent -match "Use Node" return $logContent -match "setup-node@v"
} | Select-Object -First 1 } | Select-Object -First 1
return $useNodeLogFile.Fullname return $useNodeLogFile.Fullname
} }
}
Describe "Node.js" {
It "is available" { It "is available" {
"node --version" | Should -ReturnZeroExitCode "node --version" | Should -ReturnZeroExitCode
} }
It "version is correct" { It "version is correct" {
$versionOutput = Invoke-Expression "node --version" $versionOutput = Invoke-Expression "node --version"
$versionOutput | Should -Match $Version $versionOutput | Should -Match $env:VERSION
} }
It "is used from tool-cache" { It "is used from tool-cache" {
$nodePath = (Get-Command "node").Path $nodePath = (Get-Command "node").Path
$nodePath | Should -Not -BeNullOrEmpty $nodePath | Should -Not -BeNullOrEmpty
$expectedPath = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath "node"
# GitHub Windows images don't have `AGENT_TOOLSDIRECTORY` variable
$toolcacheDir = $env:AGENT_TOOLSDIRECTORY ?? $env:RUNNER_TOOL_CACHE
$expectedPath = Join-Path -Path $toolcacheDir -ChildPath "node"
$nodePath.startsWith($expectedPath) | Should -BeTrue -Because "'$nodePath' is not started with '$expectedPath'" $nodePath.startsWith($expectedPath) | Should -BeTrue -Because "'$nodePath' is not started with '$expectedPath'"
} }
It "cached version is used without downloading" { It "cached version is used without downloading" {
if ($env:RUNNER_TYPE -eq "self-hosted") {
# Get the installed version of Node.js
$nodeVersion = Invoke-Expression "node --version"
# Check if Node.js is installed
$nodeVersion | Should -Not -BeNullOrEmpty
# Check if the installed version of Node.js is the expected version
$nodeVersion | Should -Match $env:VERSION
}else {
# Analyze output of previous steps to check if Node.js was consumed from cache or downloaded # Analyze output of previous steps to check if Node.js was consumed from cache or downloaded
$useNodeLogFile = Get-UseNodeLogs $useNodeLogFile = Get-UseNodeLogs
$useNodeLogFile | Should -Exist $useNodeLogFile | Should -Exist
$useNodeLogContent = Get-Content $useNodeLogFile -Raw $useNodeLogContent = Get-Content $useNodeLogFile -Raw
$useNodeLogContent | Should -Match "Found tool in cache" $useNodeLogContent | Should -Match "Found in cache"
}
} }
It "Run simple code" { It "Run simple code" {

File diff suppressed because it is too large Load Diff