Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a4ea4e1fc3 |
@@ -6,7 +6,7 @@
|
|||||||
"+^v[3-9]+(\\.[0-9]+){0,2}$"
|
"+^v[3-9]+(\\.[0-9]+){0,2}$"
|
||||||
],
|
],
|
||||||
"branches": {
|
"branches": {
|
||||||
"main": "27d5ce7f107fe9357f9df03efb73ab90386fccae"
|
"main": "b7e8d49f17405cc70c1c120101943203c98d3a4b"
|
||||||
},
|
},
|
||||||
"defaultBranch": "main",
|
"defaultBranch": "main",
|
||||||
"tags": {
|
"tags": {
|
||||||
@@ -137,7 +137,7 @@
|
|||||||
"commit": "0057852bfaa89a56745cba8c7296529d2fc39830"
|
"commit": "0057852bfaa89a56745cba8c7296529d2fc39830"
|
||||||
},
|
},
|
||||||
"v5": {
|
"v5": {
|
||||||
"commit": "27d5ce7f107fe9357f9df03efb73ab90386fccae"
|
"commit": "cdf6c1fa76f9f475f3d7449005a359c84ca0f306"
|
||||||
},
|
},
|
||||||
"v5.0.0": {
|
"v5.0.0": {
|
||||||
"commit": "a7833574556fa59680c1b7cb190c1735db73ebf0"
|
"commit": "a7833574556fa59680c1b7cb190c1735db73ebf0"
|
||||||
@@ -150,12 +150,6 @@
|
|||||||
},
|
},
|
||||||
"v5.0.3": {
|
"v5.0.3": {
|
||||||
"commit": "cdf6c1fa76f9f475f3d7449005a359c84ca0f306"
|
"commit": "cdf6c1fa76f9f475f3d7449005a359c84ca0f306"
|
||||||
},
|
|
||||||
"v5.0.4": {
|
|
||||||
"commit": "668228422ae6a00e4ad889ee87cd7109ec5666a7"
|
|
||||||
},
|
|
||||||
"v5.0.5": {
|
|
||||||
"commit": "27d5ce7f107fe9357f9df03efb73ab90386fccae"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
"+^v[3-9]+(\\.[0-9]+){0,2}$"
|
"+^v[3-9]+(\\.[0-9]+){0,2}$"
|
||||||
],
|
],
|
||||||
"branches": {
|
"branches": {
|
||||||
"main": "48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e"
|
"main": "d02c89dce7e1ba9ef629ce0680989b3a1cc72edb"
|
||||||
},
|
},
|
||||||
"defaultBranch": "main",
|
"defaultBranch": "main",
|
||||||
"tags": {
|
"tags": {
|
||||||
@@ -98,7 +98,7 @@
|
|||||||
"commit": "a0853c24544627f65ddf259abe73b1d18a591444"
|
"commit": "a0853c24544627f65ddf259abe73b1d18a591444"
|
||||||
},
|
},
|
||||||
"v6": {
|
"v6": {
|
||||||
"commit": "48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e"
|
"commit": "6044e13b5dc448c55e2357c09f80417699197238"
|
||||||
},
|
},
|
||||||
"v6.0.0": {
|
"v6.0.0": {
|
||||||
"commit": "2028fbc5c25fe9cf00d9f06a71cc4710d4507903"
|
"commit": "2028fbc5c25fe9cf00d9f06a71cc4710d4507903"
|
||||||
@@ -108,12 +108,6 @@
|
|||||||
},
|
},
|
||||||
"v6.2.0": {
|
"v6.2.0": {
|
||||||
"commit": "6044e13b5dc448c55e2357c09f80417699197238"
|
"commit": "6044e13b5dc448c55e2357c09f80417699197238"
|
||||||
},
|
|
||||||
"v6.3.0": {
|
|
||||||
"commit": "53b83947a5a98c8d113130e565377fae1a50d02f"
|
|
||||||
},
|
|
||||||
"v6.4.0": {
|
|
||||||
"commit": "48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
"+^v[2-9]+(\\.[0-9]+){0,2}$"
|
"+^v[2-9]+(\\.[0-9]+){0,2}$"
|
||||||
],
|
],
|
||||||
"branches": {
|
"branches": {
|
||||||
"main": "c8813ba1bc76ebf779b911ad8ffccbf2e449cb48"
|
"main": "a309ff8b426b58ec0e2a45f0f869d46889d02405"
|
||||||
},
|
},
|
||||||
"defaultBranch": "main",
|
"defaultBranch": "main",
|
||||||
"tags": {
|
"tags": {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
"+^v[4-9]+(\\.[0-9]+){0,2}$"
|
"+^v[4-9]+(\\.[0-9]+){0,2}$"
|
||||||
],
|
],
|
||||||
"branches": {
|
"branches": {
|
||||||
"main": "043fb46d1a93c77aae656e7c1c64a875d1fc6a0a"
|
"main": "47309c993abb98030a35d55ef7ff34b7fa1074b5"
|
||||||
},
|
},
|
||||||
"defaultBranch": "main",
|
"defaultBranch": "main",
|
||||||
"tags": {
|
"tags": {
|
||||||
@@ -78,15 +78,6 @@
|
|||||||
},
|
},
|
||||||
"v6.0.0": {
|
"v6.0.0": {
|
||||||
"commit": "b7c566a772e6b6bfb58ed0dc250532a479d7789f"
|
"commit": "b7c566a772e6b6bfb58ed0dc250532a479d7789f"
|
||||||
},
|
|
||||||
"v7": {
|
|
||||||
"commit": "043fb46d1a93c77aae656e7c1c64a875d1fc6a0a"
|
|
||||||
},
|
|
||||||
"v7.0.0": {
|
|
||||||
"commit": "bbbca2ddaa5d8feaa63e36b76fdaad77386f024f"
|
|
||||||
},
|
|
||||||
"v7.0.1": {
|
|
||||||
"commit": "043fb46d1a93c77aae656e7c1c64a875d1fc6a0a"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
{
|
|
||||||
"owner": "github",
|
|
||||||
"repo": "gh-aw-actions",
|
|
||||||
"patterns": [
|
|
||||||
"+^master$",
|
|
||||||
"+^v[0-9]+(\\.[0-9]+){0,2}$"
|
|
||||||
],
|
|
||||||
"branches": {},
|
|
||||||
"defaultBranch": "master",
|
|
||||||
"latestMajorVersions": 1,
|
|
||||||
"latestVersionsPerMajor": 3,
|
|
||||||
"tags": {
|
|
||||||
"v0.68.5": {
|
|
||||||
"commit": "ed10714fec78f6c6541822e4af6a90f373404b8b",
|
|
||||||
"tag": "b2e9ba3ee4bb2f7b123b831cc92827aa75249ee0"
|
|
||||||
},
|
|
||||||
"v0.68.6": {
|
|
||||||
"commit": "f52802884d655622f0a2dfd6d6a2250983c95523",
|
|
||||||
"tag": "7da066725fd3fdad06a44e9e8abe0cf5963c16f9"
|
|
||||||
},
|
|
||||||
"v0.68.7": {
|
|
||||||
"commit": "f52802884d655622f0a2dfd6d6a2250983c95523",
|
|
||||||
"tag": "69af89ae134d818caa7743b23ad966ce03914a27"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
mkdir actions_cache
|
mkdir actions_cache
|
||||||
pushd actions_cache
|
pushd actions_cache
|
||||||
curl -s -S -L -o '27d5ce7f107fe9357f9df03efb73ab90386fccae.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/27d5ce7f107fe9357f9df03efb73ab90386fccae'
|
curl -s -S -L -o 'b7e8d49f17405cc70c1c120101943203c98d3a4b.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/b7e8d49f17405cc70c1c120101943203c98d3a4b'
|
||||||
curl -s -S -L -o '27d5ce7f107fe9357f9df03efb73ab90386fccae.zip' 'https://api.github.com/repos/actions/cache/zipball/27d5ce7f107fe9357f9df03efb73ab90386fccae'
|
curl -s -S -L -o 'b7e8d49f17405cc70c1c120101943203c98d3a4b.zip' 'https://api.github.com/repos/actions/cache/zipball/b7e8d49f17405cc70c1c120101943203c98d3a4b'
|
||||||
curl -s -S -L -o '6f8efc29b200d32929f49075959781ed54ec270c.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/6f8efc29b200d32929f49075959781ed54ec270c'
|
curl -s -S -L -o '6f8efc29b200d32929f49075959781ed54ec270c.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/6f8efc29b200d32929f49075959781ed54ec270c'
|
||||||
curl -s -S -L -o '6f8efc29b200d32929f49075959781ed54ec270c.zip' 'https://api.github.com/repos/actions/cache/zipball/6f8efc29b200d32929f49075959781ed54ec270c'
|
curl -s -S -L -o '6f8efc29b200d32929f49075959781ed54ec270c.zip' 'https://api.github.com/repos/actions/cache/zipball/6f8efc29b200d32929f49075959781ed54ec270c'
|
||||||
curl -s -S -L -o '4b0cf6cc4619e737324ddfcec08fff2413359514.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/4b0cf6cc4619e737324ddfcec08fff2413359514'
|
curl -s -S -L -o '4b0cf6cc4619e737324ddfcec08fff2413359514.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/4b0cf6cc4619e737324ddfcec08fff2413359514'
|
||||||
@@ -86,8 +86,8 @@ curl -s -S -L -o '0400d5f644dc74513175e3cd8d07132dd4860809.tar.gz' 'https://api.
|
|||||||
curl -s -S -L -o '0400d5f644dc74513175e3cd8d07132dd4860809.zip' 'https://api.github.com/repos/actions/cache/zipball/0400d5f644dc74513175e3cd8d07132dd4860809'
|
curl -s -S -L -o '0400d5f644dc74513175e3cd8d07132dd4860809.zip' 'https://api.github.com/repos/actions/cache/zipball/0400d5f644dc74513175e3cd8d07132dd4860809'
|
||||||
curl -s -S -L -o '0057852bfaa89a56745cba8c7296529d2fc39830.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/0057852bfaa89a56745cba8c7296529d2fc39830'
|
curl -s -S -L -o '0057852bfaa89a56745cba8c7296529d2fc39830.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/0057852bfaa89a56745cba8c7296529d2fc39830'
|
||||||
curl -s -S -L -o '0057852bfaa89a56745cba8c7296529d2fc39830.zip' 'https://api.github.com/repos/actions/cache/zipball/0057852bfaa89a56745cba8c7296529d2fc39830'
|
curl -s -S -L -o '0057852bfaa89a56745cba8c7296529d2fc39830.zip' 'https://api.github.com/repos/actions/cache/zipball/0057852bfaa89a56745cba8c7296529d2fc39830'
|
||||||
curl -s -S -L -o '27d5ce7f107fe9357f9df03efb73ab90386fccae.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/27d5ce7f107fe9357f9df03efb73ab90386fccae'
|
curl -s -S -L -o 'cdf6c1fa76f9f475f3d7449005a359c84ca0f306.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/cdf6c1fa76f9f475f3d7449005a359c84ca0f306'
|
||||||
curl -s -S -L -o '27d5ce7f107fe9357f9df03efb73ab90386fccae.zip' 'https://api.github.com/repos/actions/cache/zipball/27d5ce7f107fe9357f9df03efb73ab90386fccae'
|
curl -s -S -L -o 'cdf6c1fa76f9f475f3d7449005a359c84ca0f306.zip' 'https://api.github.com/repos/actions/cache/zipball/cdf6c1fa76f9f475f3d7449005a359c84ca0f306'
|
||||||
curl -s -S -L -o 'a7833574556fa59680c1b7cb190c1735db73ebf0.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/a7833574556fa59680c1b7cb190c1735db73ebf0'
|
curl -s -S -L -o 'a7833574556fa59680c1b7cb190c1735db73ebf0.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/a7833574556fa59680c1b7cb190c1735db73ebf0'
|
||||||
curl -s -S -L -o 'a7833574556fa59680c1b7cb190c1735db73ebf0.zip' 'https://api.github.com/repos/actions/cache/zipball/a7833574556fa59680c1b7cb190c1735db73ebf0'
|
curl -s -S -L -o 'a7833574556fa59680c1b7cb190c1735db73ebf0.zip' 'https://api.github.com/repos/actions/cache/zipball/a7833574556fa59680c1b7cb190c1735db73ebf0'
|
||||||
curl -s -S -L -o '9255dc7a253b0ccc959486e2bca901246202afeb.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/9255dc7a253b0ccc959486e2bca901246202afeb'
|
curl -s -S -L -o '9255dc7a253b0ccc959486e2bca901246202afeb.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/9255dc7a253b0ccc959486e2bca901246202afeb'
|
||||||
@@ -96,8 +96,4 @@ curl -s -S -L -o '8b402f58fbc84540c8b491a91e594a4576fec3d7.tar.gz' 'https://api.
|
|||||||
curl -s -S -L -o '8b402f58fbc84540c8b491a91e594a4576fec3d7.zip' 'https://api.github.com/repos/actions/cache/zipball/8b402f58fbc84540c8b491a91e594a4576fec3d7'
|
curl -s -S -L -o '8b402f58fbc84540c8b491a91e594a4576fec3d7.zip' 'https://api.github.com/repos/actions/cache/zipball/8b402f58fbc84540c8b491a91e594a4576fec3d7'
|
||||||
curl -s -S -L -o 'cdf6c1fa76f9f475f3d7449005a359c84ca0f306.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/cdf6c1fa76f9f475f3d7449005a359c84ca0f306'
|
curl -s -S -L -o 'cdf6c1fa76f9f475f3d7449005a359c84ca0f306.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/cdf6c1fa76f9f475f3d7449005a359c84ca0f306'
|
||||||
curl -s -S -L -o 'cdf6c1fa76f9f475f3d7449005a359c84ca0f306.zip' 'https://api.github.com/repos/actions/cache/zipball/cdf6c1fa76f9f475f3d7449005a359c84ca0f306'
|
curl -s -S -L -o 'cdf6c1fa76f9f475f3d7449005a359c84ca0f306.zip' 'https://api.github.com/repos/actions/cache/zipball/cdf6c1fa76f9f475f3d7449005a359c84ca0f306'
|
||||||
curl -s -S -L -o '668228422ae6a00e4ad889ee87cd7109ec5666a7.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/668228422ae6a00e4ad889ee87cd7109ec5666a7'
|
|
||||||
curl -s -S -L -o '668228422ae6a00e4ad889ee87cd7109ec5666a7.zip' 'https://api.github.com/repos/actions/cache/zipball/668228422ae6a00e4ad889ee87cd7109ec5666a7'
|
|
||||||
curl -s -S -L -o '27d5ce7f107fe9357f9df03efb73ab90386fccae.tar.gz' 'https://api.github.com/repos/actions/cache/tarball/27d5ce7f107fe9357f9df03efb73ab90386fccae'
|
|
||||||
curl -s -S -L -o '27d5ce7f107fe9357f9df03efb73ab90386fccae.zip' 'https://api.github.com/repos/actions/cache/zipball/27d5ce7f107fe9357f9df03efb73ab90386fccae'
|
|
||||||
popd
|
popd
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
mkdir actions_setup-node
|
mkdir actions_setup-node
|
||||||
pushd actions_setup-node
|
pushd actions_setup-node
|
||||||
curl -s -S -L -o '48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e'
|
curl -s -S -L -o 'd02c89dce7e1ba9ef629ce0680989b3a1cc72edb.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/d02c89dce7e1ba9ef629ce0680989b3a1cc72edb'
|
||||||
curl -s -S -L -o '48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e.zip' 'https://api.github.com/repos/actions/setup-node/zipball/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e'
|
curl -s -S -L -o 'd02c89dce7e1ba9ef629ce0680989b3a1cc72edb.zip' 'https://api.github.com/repos/actions/setup-node/zipball/d02c89dce7e1ba9ef629ce0680989b3a1cc72edb'
|
||||||
curl -s -S -L -o '3235b876344d2a9aa001b8d1453c930bba69e610.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/3235b876344d2a9aa001b8d1453c930bba69e610'
|
curl -s -S -L -o '3235b876344d2a9aa001b8d1453c930bba69e610.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/3235b876344d2a9aa001b8d1453c930bba69e610'
|
||||||
curl -s -S -L -o '3235b876344d2a9aa001b8d1453c930bba69e610.zip' 'https://api.github.com/repos/actions/setup-node/zipball/3235b876344d2a9aa001b8d1453c930bba69e610'
|
curl -s -S -L -o '3235b876344d2a9aa001b8d1453c930bba69e610.zip' 'https://api.github.com/repos/actions/setup-node/zipball/3235b876344d2a9aa001b8d1453c930bba69e610'
|
||||||
curl -s -S -L -o '9ced9a43a244f3ac94f13bfd896db8c8f30da67a.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/9ced9a43a244f3ac94f13bfd896db8c8f30da67a'
|
curl -s -S -L -o '9ced9a43a244f3ac94f13bfd896db8c8f30da67a.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/9ced9a43a244f3ac94f13bfd896db8c8f30da67a'
|
||||||
@@ -60,16 +60,12 @@ curl -s -S -L -o 'a0853c24544627f65ddf259abe73b1d18a591444.tar.gz' 'https://api.
|
|||||||
curl -s -S -L -o 'a0853c24544627f65ddf259abe73b1d18a591444.zip' 'https://api.github.com/repos/actions/setup-node/zipball/a0853c24544627f65ddf259abe73b1d18a591444'
|
curl -s -S -L -o 'a0853c24544627f65ddf259abe73b1d18a591444.zip' 'https://api.github.com/repos/actions/setup-node/zipball/a0853c24544627f65ddf259abe73b1d18a591444'
|
||||||
curl -s -S -L -o 'a0853c24544627f65ddf259abe73b1d18a591444.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/a0853c24544627f65ddf259abe73b1d18a591444'
|
curl -s -S -L -o 'a0853c24544627f65ddf259abe73b1d18a591444.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/a0853c24544627f65ddf259abe73b1d18a591444'
|
||||||
curl -s -S -L -o 'a0853c24544627f65ddf259abe73b1d18a591444.zip' 'https://api.github.com/repos/actions/setup-node/zipball/a0853c24544627f65ddf259abe73b1d18a591444'
|
curl -s -S -L -o 'a0853c24544627f65ddf259abe73b1d18a591444.zip' 'https://api.github.com/repos/actions/setup-node/zipball/a0853c24544627f65ddf259abe73b1d18a591444'
|
||||||
curl -s -S -L -o '48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e'
|
curl -s -S -L -o '6044e13b5dc448c55e2357c09f80417699197238.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/6044e13b5dc448c55e2357c09f80417699197238'
|
||||||
curl -s -S -L -o '48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e.zip' 'https://api.github.com/repos/actions/setup-node/zipball/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e'
|
curl -s -S -L -o '6044e13b5dc448c55e2357c09f80417699197238.zip' 'https://api.github.com/repos/actions/setup-node/zipball/6044e13b5dc448c55e2357c09f80417699197238'
|
||||||
curl -s -S -L -o '2028fbc5c25fe9cf00d9f06a71cc4710d4507903.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/2028fbc5c25fe9cf00d9f06a71cc4710d4507903'
|
curl -s -S -L -o '2028fbc5c25fe9cf00d9f06a71cc4710d4507903.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/2028fbc5c25fe9cf00d9f06a71cc4710d4507903'
|
||||||
curl -s -S -L -o '2028fbc5c25fe9cf00d9f06a71cc4710d4507903.zip' 'https://api.github.com/repos/actions/setup-node/zipball/2028fbc5c25fe9cf00d9f06a71cc4710d4507903'
|
curl -s -S -L -o '2028fbc5c25fe9cf00d9f06a71cc4710d4507903.zip' 'https://api.github.com/repos/actions/setup-node/zipball/2028fbc5c25fe9cf00d9f06a71cc4710d4507903'
|
||||||
curl -s -S -L -o '395ad3262231945c25e8478fd5baf05154b1d79f.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/395ad3262231945c25e8478fd5baf05154b1d79f'
|
curl -s -S -L -o '395ad3262231945c25e8478fd5baf05154b1d79f.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/395ad3262231945c25e8478fd5baf05154b1d79f'
|
||||||
curl -s -S -L -o '395ad3262231945c25e8478fd5baf05154b1d79f.zip' 'https://api.github.com/repos/actions/setup-node/zipball/395ad3262231945c25e8478fd5baf05154b1d79f'
|
curl -s -S -L -o '395ad3262231945c25e8478fd5baf05154b1d79f.zip' 'https://api.github.com/repos/actions/setup-node/zipball/395ad3262231945c25e8478fd5baf05154b1d79f'
|
||||||
curl -s -S -L -o '6044e13b5dc448c55e2357c09f80417699197238.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/6044e13b5dc448c55e2357c09f80417699197238'
|
curl -s -S -L -o '6044e13b5dc448c55e2357c09f80417699197238.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/6044e13b5dc448c55e2357c09f80417699197238'
|
||||||
curl -s -S -L -o '6044e13b5dc448c55e2357c09f80417699197238.zip' 'https://api.github.com/repos/actions/setup-node/zipball/6044e13b5dc448c55e2357c09f80417699197238'
|
curl -s -S -L -o '6044e13b5dc448c55e2357c09f80417699197238.zip' 'https://api.github.com/repos/actions/setup-node/zipball/6044e13b5dc448c55e2357c09f80417699197238'
|
||||||
curl -s -S -L -o '53b83947a5a98c8d113130e565377fae1a50d02f.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/53b83947a5a98c8d113130e565377fae1a50d02f'
|
|
||||||
curl -s -S -L -o '53b83947a5a98c8d113130e565377fae1a50d02f.zip' 'https://api.github.com/repos/actions/setup-node/zipball/53b83947a5a98c8d113130e565377fae1a50d02f'
|
|
||||||
curl -s -S -L -o '48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e.tar.gz' 'https://api.github.com/repos/actions/setup-node/tarball/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e'
|
|
||||||
curl -s -S -L -o '48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e.zip' 'https://api.github.com/repos/actions/setup-node/zipball/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e'
|
|
||||||
popd
|
popd
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
mkdir actions_setup-python
|
mkdir actions_setup-python
|
||||||
pushd actions_setup-python
|
pushd actions_setup-python
|
||||||
curl -s -S -L -o 'c8813ba1bc76ebf779b911ad8ffccbf2e449cb48.tar.gz' 'https://api.github.com/repos/actions/setup-python/tarball/c8813ba1bc76ebf779b911ad8ffccbf2e449cb48'
|
curl -s -S -L -o 'a309ff8b426b58ec0e2a45f0f869d46889d02405.tar.gz' 'https://api.github.com/repos/actions/setup-python/tarball/a309ff8b426b58ec0e2a45f0f869d46889d02405'
|
||||||
curl -s -S -L -o 'c8813ba1bc76ebf779b911ad8ffccbf2e449cb48.zip' 'https://api.github.com/repos/actions/setup-python/zipball/c8813ba1bc76ebf779b911ad8ffccbf2e449cb48'
|
curl -s -S -L -o 'a309ff8b426b58ec0e2a45f0f869d46889d02405.zip' 'https://api.github.com/repos/actions/setup-python/zipball/a309ff8b426b58ec0e2a45f0f869d46889d02405'
|
||||||
curl -s -S -L -o 'e9aba2c848f5ebd159c070c61ea2c4e2b122355e.tar.gz' 'https://api.github.com/repos/actions/setup-python/tarball/e9aba2c848f5ebd159c070c61ea2c4e2b122355e'
|
curl -s -S -L -o 'e9aba2c848f5ebd159c070c61ea2c4e2b122355e.tar.gz' 'https://api.github.com/repos/actions/setup-python/tarball/e9aba2c848f5ebd159c070c61ea2c4e2b122355e'
|
||||||
curl -s -S -L -o 'e9aba2c848f5ebd159c070c61ea2c4e2b122355e.zip' 'https://api.github.com/repos/actions/setup-python/zipball/e9aba2c848f5ebd159c070c61ea2c4e2b122355e'
|
curl -s -S -L -o 'e9aba2c848f5ebd159c070c61ea2c4e2b122355e.zip' 'https://api.github.com/repos/actions/setup-python/zipball/e9aba2c848f5ebd159c070c61ea2c4e2b122355e'
|
||||||
curl -s -S -L -o '6c4e46d258ee4bf9a1263c78a91ec029bbe54cf0.tar.gz' 'https://api.github.com/repos/actions/setup-python/tarball/6c4e46d258ee4bf9a1263c78a91ec029bbe54cf0'
|
curl -s -S -L -o '6c4e46d258ee4bf9a1263c78a91ec029bbe54cf0.tar.gz' 'https://api.github.com/repos/actions/setup-python/tarball/6c4e46d258ee4bf9a1263c78a91ec029bbe54cf0'
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
mkdir actions_upload-artifact
|
mkdir actions_upload-artifact
|
||||||
pushd actions_upload-artifact
|
pushd actions_upload-artifact
|
||||||
curl -s -S -L -o '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a'
|
curl -s -S -L -o '47309c993abb98030a35d55ef7ff34b7fa1074b5.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/47309c993abb98030a35d55ef7ff34b7fa1074b5'
|
||||||
curl -s -S -L -o '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a'
|
curl -s -S -L -o '47309c993abb98030a35d55ef7ff34b7fa1074b5.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/47309c993abb98030a35d55ef7ff34b7fa1074b5'
|
||||||
curl -s -S -L -o 'ea165f8d65b6e75b540449e92b4886f43607fa02.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/ea165f8d65b6e75b540449e92b4886f43607fa02'
|
curl -s -S -L -o 'ea165f8d65b6e75b540449e92b4886f43607fa02.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/ea165f8d65b6e75b540449e92b4886f43607fa02'
|
||||||
curl -s -S -L -o 'ea165f8d65b6e75b540449e92b4886f43607fa02.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/ea165f8d65b6e75b540449e92b4886f43607fa02'
|
curl -s -S -L -o 'ea165f8d65b6e75b540449e92b4886f43607fa02.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/ea165f8d65b6e75b540449e92b4886f43607fa02'
|
||||||
curl -s -S -L -o 'c7d193f32edcb7bfad88892161225aeda64e9392.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/c7d193f32edcb7bfad88892161225aeda64e9392'
|
curl -s -S -L -o 'c7d193f32edcb7bfad88892161225aeda64e9392.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/c7d193f32edcb7bfad88892161225aeda64e9392'
|
||||||
@@ -48,10 +48,4 @@ curl -s -S -L -o 'b7c566a772e6b6bfb58ed0dc250532a479d7789f.tar.gz' 'https://api.
|
|||||||
curl -s -S -L -o 'b7c566a772e6b6bfb58ed0dc250532a479d7789f.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/b7c566a772e6b6bfb58ed0dc250532a479d7789f'
|
curl -s -S -L -o 'b7c566a772e6b6bfb58ed0dc250532a479d7789f.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/b7c566a772e6b6bfb58ed0dc250532a479d7789f'
|
||||||
curl -s -S -L -o 'b7c566a772e6b6bfb58ed0dc250532a479d7789f.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/b7c566a772e6b6bfb58ed0dc250532a479d7789f'
|
curl -s -S -L -o 'b7c566a772e6b6bfb58ed0dc250532a479d7789f.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/b7c566a772e6b6bfb58ed0dc250532a479d7789f'
|
||||||
curl -s -S -L -o 'b7c566a772e6b6bfb58ed0dc250532a479d7789f.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/b7c566a772e6b6bfb58ed0dc250532a479d7789f'
|
curl -s -S -L -o 'b7c566a772e6b6bfb58ed0dc250532a479d7789f.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/b7c566a772e6b6bfb58ed0dc250532a479d7789f'
|
||||||
curl -s -S -L -o '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a'
|
|
||||||
curl -s -S -L -o '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a'
|
|
||||||
curl -s -S -L -o 'bbbca2ddaa5d8feaa63e36b76fdaad77386f024f.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/bbbca2ddaa5d8feaa63e36b76fdaad77386f024f'
|
|
||||||
curl -s -S -L -o 'bbbca2ddaa5d8feaa63e36b76fdaad77386f024f.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/bbbca2ddaa5d8feaa63e36b76fdaad77386f024f'
|
|
||||||
curl -s -S -L -o '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a.tar.gz' 'https://api.github.com/repos/actions/upload-artifact/tarball/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a'
|
|
||||||
curl -s -S -L -o '043fb46d1a93c77aae656e7c1c64a875d1fc6a0a.zip' 'https://api.github.com/repos/actions/upload-artifact/zipball/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a'
|
|
||||||
popd
|
popd
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
mkdir github_gh-aw-actions
|
|
||||||
pushd github_gh-aw-actions
|
|
||||||
curl -s -S -L -o 'ed10714fec78f6c6541822e4af6a90f373404b8b.tar.gz' 'https://api.github.com/repos/github/gh-aw-actions/tarball/ed10714fec78f6c6541822e4af6a90f373404b8b'
|
|
||||||
curl -s -S -L -o 'ed10714fec78f6c6541822e4af6a90f373404b8b.zip' 'https://api.github.com/repos/github/gh-aw-actions/zipball/ed10714fec78f6c6541822e4af6a90f373404b8b'
|
|
||||||
curl -s -S -L -o 'f52802884d655622f0a2dfd6d6a2250983c95523.tar.gz' 'https://api.github.com/repos/github/gh-aw-actions/tarball/f52802884d655622f0a2dfd6d6a2250983c95523'
|
|
||||||
curl -s -S -L -o 'f52802884d655622f0a2dfd6d6a2250983c95523.zip' 'https://api.github.com/repos/github/gh-aw-actions/zipball/f52802884d655622f0a2dfd6d6a2250983c95523'
|
|
||||||
curl -s -S -L -o 'f52802884d655622f0a2dfd6d6a2250983c95523.tar.gz' 'https://api.github.com/repos/github/gh-aw-actions/tarball/f52802884d655622f0a2dfd6d6a2250983c95523'
|
|
||||||
curl -s -S -L -o 'f52802884d655622f0a2dfd6d6a2250983c95523.zip' 'https://api.github.com/repos/github/gh-aw-actions/zipball/f52802884d655622f0a2dfd6d6a2250983c95523'
|
|
||||||
popd
|
|
||||||
@@ -44,18 +44,6 @@ class ActionConfig {
|
|||||||
*/
|
*/
|
||||||
defaultBranch = 'master'
|
defaultBranch = 'master'
|
||||||
|
|
||||||
/**
|
|
||||||
* Maximum number of latest major versions to include (default to unlimited)
|
|
||||||
* @type {number|undefined}
|
|
||||||
*/
|
|
||||||
latestMajorVersions = undefined
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Maximum number of latest version tags per major version (default to unlimited)
|
|
||||||
* @type {number|undefined}
|
|
||||||
*/
|
|
||||||
latestVersionsPerMajor = undefined
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tag versions
|
* Tag versions
|
||||||
* @type {{[ref: string]: TagVersion}}
|
* @type {{[ref: string]: TagVersion}}
|
||||||
@@ -85,11 +73,9 @@ exports.TagVersion = TagVersion
|
|||||||
* @param {string[]} patternStrings
|
* @param {string[]} patternStrings
|
||||||
* @param {string} defaultBranch
|
* @param {string} defaultBranch
|
||||||
* @param {string[]|undefined} ignoreTags
|
* @param {string[]|undefined} ignoreTags
|
||||||
* @param {number|undefined} latestMajorVersions
|
|
||||||
* @param {number|undefined} latestVersionsPerMajor
|
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
*/
|
*/
|
||||||
async function add(owner, repo, patternStrings, defaultBranch, ignoreTags, latestMajorVersions, latestVersionsPerMajor) {
|
async function add(owner, repo, patternStrings, defaultBranch, ignoreTags) {
|
||||||
assert.ok(owner, "Arg 'owner' must not be empty")
|
assert.ok(owner, "Arg 'owner' must not be empty")
|
||||||
assert.ok(repo, "Arg 'repo' must not be empty")
|
assert.ok(repo, "Arg 'repo' must not be empty")
|
||||||
assert.ok(patternStrings, "Arg 'patternStrings' must not be null")
|
assert.ok(patternStrings, "Arg 'patternStrings' must not be null")
|
||||||
@@ -108,12 +94,6 @@ async function add(owner, repo, patternStrings, defaultBranch, ignoreTags, lates
|
|||||||
if (ignoreTags && ignoreTags.length > 0) {
|
if (ignoreTags && ignoreTags.length > 0) {
|
||||||
config.ignoreTags = ignoreTags
|
config.ignoreTags = ignoreTags
|
||||||
}
|
}
|
||||||
if (latestMajorVersions && latestMajorVersions > 0) {
|
|
||||||
config.latestMajorVersions = latestMajorVersions
|
|
||||||
}
|
|
||||||
if (latestVersionsPerMajor && latestVersionsPerMajor > 0) {
|
|
||||||
config.latestVersionsPerMajor = latestVersionsPerMajor
|
|
||||||
}
|
|
||||||
config.defaultBranch = defaultBranch
|
config.defaultBranch = defaultBranch
|
||||||
|
|
||||||
const tempDir = path.join(paths.temp, `${owner}_${repo}`)
|
const tempDir = path.join(paths.temp, `${owner}_${repo}`)
|
||||||
@@ -150,9 +130,6 @@ async function add(owner, repo, patternStrings, defaultBranch, ignoreTags, lates
|
|||||||
config.tags[tag] = tagVersion
|
config.tags[tag] = tagVersion
|
||||||
}
|
}
|
||||||
|
|
||||||
// Prune old tags based on version limits
|
|
||||||
pruneOldTags(config)
|
|
||||||
|
|
||||||
// Write config
|
// Write config
|
||||||
await exec.exec('mkdir', ['-p', path.dirname(file)])
|
await exec.exec('mkdir', ['-p', path.dirname(file)])
|
||||||
await fs.promises.writeFile(file, JSON.stringify(config, null, ' '))
|
await fs.promises.writeFile(file, JSON.stringify(config, null, ' '))
|
||||||
@@ -164,75 +141,6 @@ async function add(owner, repo, patternStrings, defaultBranch, ignoreTags, lates
|
|||||||
}
|
}
|
||||||
exports.add = add
|
exports.add = add
|
||||||
|
|
||||||
/**
|
|
||||||
* Prunes old tags from the config based on latestMajorVersions and latestVersionsPerMajor.
|
|
||||||
* Modifies config.tags in place.
|
|
||||||
* @param {ActionConfig} config
|
|
||||||
*/
|
|
||||||
function pruneOldTags(config) {
|
|
||||||
const maxMajors = config.latestMajorVersions || 0
|
|
||||||
const maxPerMajor = config.latestVersionsPerMajor || 0
|
|
||||||
|
|
||||||
if (!maxMajors && !maxPerMajor) {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
const tagNames = Object.keys(config.tags)
|
|
||||||
const versionTags = []
|
|
||||||
const keepTags = new Set()
|
|
||||||
|
|
||||||
for (const tag of tagNames) {
|
|
||||||
const match = tag.match(/^v(\d+)(?:\.(\d+))?(?:\.(\d+))?$/)
|
|
||||||
if (!match) {
|
|
||||||
// Always keep non-version tags
|
|
||||||
keepTags.add(tag)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
const major = parseInt(match[1], 10)
|
|
||||||
const minor = match[2] !== undefined ? parseInt(match[2], 10) : -1
|
|
||||||
const patch = match[3] !== undefined ? parseInt(match[3], 10) : -1
|
|
||||||
versionTags.push({ tag, major, minor, patch, isMajorOnly: minor === -1 })
|
|
||||||
}
|
|
||||||
|
|
||||||
// Distinct major versions sorted descending (newest first)
|
|
||||||
const majorVersions = [...new Set(versionTags.map(v => v.major))].sort((a, b) => b - a)
|
|
||||||
const allowedMajors = new Set(
|
|
||||||
maxMajors > 0 ? majorVersions.slice(0, maxMajors) : majorVersions
|
|
||||||
)
|
|
||||||
|
|
||||||
for (const major of allowedMajors) {
|
|
||||||
const tagsForMajor = versionTags.filter(v => v.major === major)
|
|
||||||
|
|
||||||
// Always keep major-only pointers (e.g. "v4")
|
|
||||||
for (const v of tagsForMajor.filter(v => v.isMajorOnly)) {
|
|
||||||
keepTags.add(v.tag)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Sort non-major-only tags by version descending (latest first)
|
|
||||||
const sorted = tagsForMajor
|
|
||||||
.filter(v => !v.isMajorOnly)
|
|
||||||
.sort((a, b) => {
|
|
||||||
if (a.minor !== b.minor) return b.minor - a.minor
|
|
||||||
return b.patch - a.patch
|
|
||||||
})
|
|
||||||
|
|
||||||
const kept = maxPerMajor > 0 ? sorted.slice(0, maxPerMajor) : sorted
|
|
||||||
for (const v of kept) {
|
|
||||||
keepTags.add(v.tag)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Remove pruned tags
|
|
||||||
for (const tag of tagNames) {
|
|
||||||
if (!keepTags.has(tag)) {
|
|
||||||
console.log(`Pruning tag '${tag}' from config (version limit)`)
|
|
||||||
delete config.tags[tag]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
exports.pruneOldTags = pruneOldTags
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the action config file path
|
* Returns the action config file path
|
||||||
* @param {string} owner
|
* @param {string} owner
|
||||||
|
|||||||
@@ -15,8 +15,6 @@ async function main() {
|
|||||||
const patterns = args.patterns
|
const patterns = args.patterns
|
||||||
const defaultBranch = args.defaultBranch || 'master'
|
const defaultBranch = args.defaultBranch || 'master'
|
||||||
const ignoreTags = args.ignoreTags
|
const ignoreTags = args.ignoreTags
|
||||||
const latestMajorVersions = args.latestMajorVersions
|
|
||||||
const latestVersionsPerMajor = args.latestVersionsPerMajor
|
|
||||||
|
|
||||||
// File exists?
|
// File exists?
|
||||||
const file = actionConfig.getFilePath(owner, repo)
|
const file = actionConfig.getFilePath(owner, repo)
|
||||||
@@ -26,7 +24,7 @@ async function main() {
|
|||||||
await fsHelper.reinitTemp()
|
await fsHelper.reinitTemp()
|
||||||
|
|
||||||
// Add the config
|
// Add the config
|
||||||
await actionConfig.add(owner, repo, patterns, defaultBranch, ignoreTags, latestMajorVersions, latestVersionsPerMajor)
|
await actionConfig.add(owner, repo, patterns, defaultBranch, ignoreTags)
|
||||||
}
|
}
|
||||||
catch (err) {
|
catch (err) {
|
||||||
// Help
|
// Help
|
||||||
@@ -62,7 +60,7 @@ class Args {
|
|||||||
*/
|
*/
|
||||||
function getArgs() {
|
function getArgs() {
|
||||||
// Parse
|
// Parse
|
||||||
const parsedArgs = argHelper.parse([], ['default-branch', 'ignore-tags', 'latest-major-versions', 'latest-versions-per-major'])
|
const parsedArgs = argHelper.parse([], ['default-branch', 'ignore-tags'])
|
||||||
if (parsedArgs.arguments.length < 1) {
|
if (parsedArgs.arguments.length < 1) {
|
||||||
argHelper.throwError('Expected at least one arg')
|
argHelper.throwError('Expected at least one arg')
|
||||||
}
|
}
|
||||||
@@ -103,29 +101,16 @@ function getArgs() {
|
|||||||
repo: splitNwo[1],
|
repo: splitNwo[1],
|
||||||
patterns: patterns,
|
patterns: patterns,
|
||||||
defaultBranch: parsedArgs.options['default-branch'],
|
defaultBranch: parsedArgs.options['default-branch'],
|
||||||
ignoreTags: ignoreTags,
|
ignoreTags: ignoreTags
|
||||||
latestMajorVersions: parseNonNegativeInt(parsedArgs.options['latest-major-versions'], 'latest-major-versions'),
|
|
||||||
latestVersionsPerMajor: parseNonNegativeInt(parsedArgs.options['latest-versions-per-major'], 'latest-versions-per-major')
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function parseNonNegativeInt(value, name) {
|
|
||||||
if (!value) return 0
|
|
||||||
const n = Number(value)
|
|
||||||
if (!Number.isInteger(n) || n < 0) {
|
|
||||||
argHelper.throwError(`--${name} must be a non-negative integer, got '${value}'`)
|
|
||||||
}
|
|
||||||
return n
|
|
||||||
}
|
|
||||||
|
|
||||||
function printUsage() {
|
function printUsage() {
|
||||||
console.error('USAGE: add-action.sh [--default-branch branch] [--ignore-tags versions] [--latest-major-versions N] [--latest-versions-per-major N] nwo [(+|-)regexp [...]]')
|
console.error('USAGE: add-action.sh [--default-branch branch] [--ignore-tags versions] nwo [(+|-)regexp [...]]')
|
||||||
console.error(` --default-branch Default branch name. For example: master`)
|
console.error(` --default-branch Default branch name. For example: master`)
|
||||||
console.error(` --ignore-tags Comma-separated version prefixes to ignore. For example: v1,v2`)
|
console.error(` --ignore-tags Comma-separated version prefixes to ignore. For example: v1,v2`)
|
||||||
console.error(` --latest-major-versions Only cache the latest N major versions. For example: 3`)
|
console.error(` nwo Name with owner. For example: actions/checkout`)
|
||||||
console.error(` --latest-versions-per-major Only cache the latest N version tags per major version. For example: 5`)
|
console.error(` regexp Refs to include or exclude. Default: ${actionConfig.defaultPatterns.join(' ')}`)
|
||||||
console.error(` nwo Name with owner. For example: actions/checkout`)
|
|
||||||
console.error(` regexp Refs to include or exclude. Default: ${actionConfig.defaultPatterns.join(' ')}`)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
main()
|
main()
|
||||||
@@ -1,87 +0,0 @@
|
|||||||
// Filters tags from an action config based on latestMajorVersions and latestVersionsPerMajor.
|
|
||||||
// Reads JSON config from stdin, outputs allowed tag names (one per line).
|
|
||||||
|
|
||||||
async function main() {
|
|
||||||
let input = ''
|
|
||||||
for await (const chunk of process.stdin) {
|
|
||||||
input += chunk
|
|
||||||
}
|
|
||||||
|
|
||||||
const config = JSON.parse(input)
|
|
||||||
const tags = Object.keys(config.tags || {})
|
|
||||||
const latestMajorVersions = config.latestMajorVersions || 0 // 0 = unlimited
|
|
||||||
const latestVersionsPerMajor = config.latestVersionsPerMajor || 0 // 0 = unlimited
|
|
||||||
|
|
||||||
if (!latestMajorVersions && !latestVersionsPerMajor) {
|
|
||||||
// No filtering configured, output all tags
|
|
||||||
for (const tag of tags) {
|
|
||||||
console.log(tag)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// Parse version info from tag names
|
|
||||||
const versionTags = []
|
|
||||||
const nonVersionTags = []
|
|
||||||
|
|
||||||
for (const tag of tags) {
|
|
||||||
const match = tag.match(/^v(\d+)(?:\.(\d+))?(?:\.(\d+))?$/)
|
|
||||||
if (!match) {
|
|
||||||
nonVersionTags.push(tag)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
const major = parseInt(match[1], 10)
|
|
||||||
const minor = match[2] !== undefined ? parseInt(match[2], 10) : -1
|
|
||||||
const patch = match[3] !== undefined ? parseInt(match[3], 10) : -1
|
|
||||||
const isMajorOnly = minor === -1
|
|
||||||
|
|
||||||
versionTags.push({ tag, major, minor, patch, isMajorOnly })
|
|
||||||
}
|
|
||||||
|
|
||||||
// Find distinct major versions sorted descending (newest first)
|
|
||||||
const majorVersions = [...new Set(versionTags.map(v => v.major))].sort((a, b) => b - a)
|
|
||||||
|
|
||||||
// Apply latestMajorVersions filter
|
|
||||||
const allowedMajors = new Set(
|
|
||||||
latestMajorVersions > 0 ? majorVersions.slice(0, latestMajorVersions) : majorVersions
|
|
||||||
)
|
|
||||||
|
|
||||||
// Always include non-version tags
|
|
||||||
const result = [...nonVersionTags]
|
|
||||||
|
|
||||||
for (const major of allowedMajors) {
|
|
||||||
const tagsForMajor = versionTags.filter(v => v.major === major)
|
|
||||||
|
|
||||||
// Always include major-only pointers (e.g., "v4")
|
|
||||||
for (const v of tagsForMajor.filter(v => v.isMajorOnly)) {
|
|
||||||
result.push(v.tag)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Sort non-major-only tags by version descending (latest first)
|
|
||||||
const sortedVersions = tagsForMajor
|
|
||||||
.filter(v => !v.isMajorOnly)
|
|
||||||
.sort((a, b) => {
|
|
||||||
if (a.minor !== b.minor) return b.minor - a.minor
|
|
||||||
return b.patch - a.patch
|
|
||||||
})
|
|
||||||
|
|
||||||
// Apply latestVersionsPerMajor filter
|
|
||||||
const kept = latestVersionsPerMajor > 0
|
|
||||||
? sortedVersions.slice(0, latestVersionsPerMajor)
|
|
||||||
: sortedVersions
|
|
||||||
|
|
||||||
for (const v of kept) {
|
|
||||||
result.push(v.tag)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for (const tag of result) {
|
|
||||||
console.log(tag)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
main().catch(err => {
|
|
||||||
console.error(err.message)
|
|
||||||
process.exitCode = 1
|
|
||||||
})
|
|
||||||
@@ -44,15 +44,6 @@ for json_file in $script_dir/../../config/actions/*.json; do
|
|||||||
ignore_patterns=()
|
ignore_patterns=()
|
||||||
IFS=$'\n' read -r -d '' -a ignore_patterns < <( echo "$json" | jq --raw-output '.ignoreTags // [] | .[]' && printf '\0' )
|
IFS=$'\n' read -r -d '' -a ignore_patterns < <( echo "$json" | jq --raw-output '.ignoreTags // [] | .[]' && printf '\0' )
|
||||||
|
|
||||||
# Get version-filtered tags (applies latestMajorVersions and latestVersionsPerMajor)
|
|
||||||
filtered_tags=()
|
|
||||||
IFS=$'\n' read -r -d '' -a filtered_tags < <( echo "$json" | node "$script_dir/filter-tags.js" && printf '\0' )
|
|
||||||
unset filtered_tag_set
|
|
||||||
declare -A filtered_tag_set
|
|
||||||
for t in "${filtered_tags[@]}"; do
|
|
||||||
filtered_tag_set[$t]=1
|
|
||||||
done
|
|
||||||
|
|
||||||
# Get an array of tag info. Each item contains "<tag> <commit_sha>"
|
# Get an array of tag info. Each item contains "<tag> <commit_sha>"
|
||||||
tag_info=()
|
tag_info=()
|
||||||
IFS=$'\n' read -r -d '' -a tag_info < <( echo "$json" | jq --raw-output '.tags | to_entries | .[] | .key + " " + .value.commit' && printf '\0' )
|
IFS=$'\n' read -r -d '' -a tag_info < <( echo "$json" | jq --raw-output '.tags | to_entries | .[] | .key + " " + .value.commit' && printf '\0' )
|
||||||
@@ -76,12 +67,6 @@ for json_file in $script_dir/../../config/actions/*.json; do
|
|||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check if the tag passes version filter
|
|
||||||
if [ -z "${filtered_tag_set[$tag]+x}" ]; then
|
|
||||||
echo "Skipping tag '$tag' (filtered by version limits)"
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Append curl download command
|
# Append curl download command
|
||||||
curl_download_commands+=("curl -s -S -L -o '$sha.tar.gz' 'https://api.github.com/repos/$owner/$repo/tarball/$sha'")
|
curl_download_commands+=("curl -s -S -L -o '$sha.tar.gz' 'https://api.github.com/repos/$owner/$repo/tarball/$sha'")
|
||||||
curl_download_commands+=("curl -s -S -L -o '$sha.zip' 'https://api.github.com/repos/$owner/$repo/zipball/$sha'")
|
curl_download_commands+=("curl -s -S -L -o '$sha.zip' 'https://api.github.com/repos/$owner/$repo/zipball/$sha'")
|
||||||
|
|||||||
@@ -23,10 +23,8 @@ async function main() {
|
|||||||
const patterns = config.patterns
|
const patterns = config.patterns
|
||||||
const defaultBranch = config.defaultBranch
|
const defaultBranch = config.defaultBranch
|
||||||
const ignoreTags = config.ignoreTags
|
const ignoreTags = config.ignoreTags
|
||||||
const latestMajorVersions = args.latestMajorVersions || config.latestMajorVersions
|
|
||||||
const latestVersionsPerMajor = args.latestVersionsPerMajor || config.latestVersionsPerMajor
|
|
||||||
assert.ok(patterns && patterns.length, 'Existing patterns must not be empty')
|
assert.ok(patterns && patterns.length, 'Existing patterns must not be empty')
|
||||||
await actionConfig.add(owner, repo, patterns, defaultBranch, ignoreTags, latestMajorVersions, latestVersionsPerMajor)
|
await actionConfig.add(owner, repo, patterns, defaultBranch, ignoreTags)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (err) {
|
catch (err) {
|
||||||
@@ -53,8 +51,6 @@ class Args {
|
|||||||
all = false
|
all = false
|
||||||
owner = ''
|
owner = ''
|
||||||
repo = ''
|
repo = ''
|
||||||
latestMajorVersions = 0
|
|
||||||
latestVersionsPerMajor = 0
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -62,11 +58,9 @@ class Args {
|
|||||||
* @returns {Args}
|
* @returns {Args}
|
||||||
*/
|
*/
|
||||||
function getArgs() {
|
function getArgs() {
|
||||||
const parsedArgs = argHelper.parse(['all'], ['latest-major-versions', 'latest-versions-per-major'])
|
const parsedArgs = argHelper.parse(['all'])
|
||||||
const result = new Args()
|
const result = new Args()
|
||||||
result.all = !!parsedArgs.flags['all']
|
result.all = !!parsedArgs.flags['all']
|
||||||
result.latestMajorVersions = parseNonNegativeInt(parsedArgs.options['latest-major-versions'], 'latest-major-versions')
|
|
||||||
result.latestVersionsPerMajor = parseNonNegativeInt(parsedArgs.options['latest-versions-per-major'], 'latest-versions-per-major')
|
|
||||||
|
|
||||||
// All
|
// All
|
||||||
if (result.all) {
|
if (result.all) {
|
||||||
@@ -94,21 +88,9 @@ function getArgs() {
|
|||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
function parseNonNegativeInt(value, name) {
|
|
||||||
if (!value) return 0
|
|
||||||
const n = Number(value)
|
|
||||||
if (!Number.isInteger(n) || n < 0) {
|
|
||||||
argHelper.throwError(`--${name} must be a non-negative integer, got '${value}'`)
|
|
||||||
}
|
|
||||||
return n
|
|
||||||
}
|
|
||||||
|
|
||||||
function printUsage() {
|
function printUsage() {
|
||||||
console.error('USAGE: update-action.sh [--all] [--latest-major-versions N] [--latest-versions-per-major N] [nwo]')
|
console.error('USAGE: update-action.sh nwo')
|
||||||
console.error(` --all Update all configured actions`)
|
console.error(` nwo Name with owner. For example: actions/checkout`)
|
||||||
console.error(` --latest-major-versions Update to only keep the latest N major versions`)
|
|
||||||
console.error(` --latest-versions-per-major Update to only keep the latest N version tags per major`)
|
|
||||||
console.error(` nwo Name with owner. For example: actions/checkout`)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
main()
|
main()
|
||||||
@@ -46,8 +46,6 @@ function test_tar_gz ()
|
|||||||
echo "Find action.yml under $sha_archive_full_path"
|
echo "Find action.yml under $sha_archive_full_path"
|
||||||
elif [[ -f "$first_dir/action.yaml" ]]; then
|
elif [[ -f "$first_dir/action.yaml" ]]; then
|
||||||
echo "Find action.yaml under $sha_archive_full_path"
|
echo "Find action.yaml under $sha_archive_full_path"
|
||||||
elif find "$first_dir" -name 'action.yml' -o -name 'action.yaml' | grep -q .; then
|
|
||||||
echo "Find action.yml in subdirectory under $sha_archive_full_path"
|
|
||||||
else
|
else
|
||||||
echo "$sha_archive_full_path doesn't contain an action.yml or action.yaml"
|
echo "$sha_archive_full_path doesn't contain an action.yml or action.yaml"
|
||||||
exit 1
|
exit 1
|
||||||
@@ -85,8 +83,6 @@ function test_zip ()
|
|||||||
echo "Find action.yml under $sha_archive_full_path"
|
echo "Find action.yml under $sha_archive_full_path"
|
||||||
elif [[ -f "$first_dir/action.yaml" ]]; then
|
elif [[ -f "$first_dir/action.yaml" ]]; then
|
||||||
echo "Find action.yaml under $sha_archive_full_path"
|
echo "Find action.yaml under $sha_archive_full_path"
|
||||||
elif find "$first_dir" -name 'action.yml' -o -name 'action.yaml' | grep -q .; then
|
|
||||||
echo "Find action.yml in subdirectory under $sha_archive_full_path"
|
|
||||||
else
|
else
|
||||||
echo "$sha_archive_full_path doesn't contain an action.yml or action.yaml"
|
echo "$sha_archive_full_path doesn't contain an action.yml or action.yaml"
|
||||||
exit 1
|
exit 1
|
||||||
|
|||||||
Reference in New Issue
Block a user