From 902d250572337b94e8f9f984b291b6e58603394f Mon Sep 17 00:00:00 2001 From: Dan Lorenc <dlorenc@google.com> Date: Fri, 18 Dec 2020 08:16:38 -0600 Subject: [PATCH] Add a basic e2e test script and test data. This runs against a running setup, and does a single upload of some node data. --- .github/workflows/main.yml | 18 ++++++++++++++- tests/e2e-test.sh | 9 ++++++++ tests/node/SHASUMS256.txt | 32 ++++++++++++++++++++++++++ tests/node/key | Bin 0 -> 1628 bytes tests/node/sha | 1 + tests/node/sig | Bin 0 -> 310 bytes tests/node/sig.asc | 46 +++++++++++++++++++++++++++++++++++++ tests/node/url | 1 + 8 files changed, 106 insertions(+), 1 deletion(-) create mode 100755 tests/e2e-test.sh create mode 100644 tests/node/SHASUMS256.txt create mode 100644 tests/node/key create mode 100644 tests/node/sha create mode 100644 tests/node/sig create mode 100644 tests/node/sig.asc create mode 100644 tests/node/url diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4c84c36..2a1c81d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -12,7 +12,6 @@ on: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: - # This workflow contains a single job called "build" build: # The type of runner that the job will run on runs-on: ubuntu-latest @@ -53,3 +52,20 @@ jobs: run: git update-index --refresh && git diff-index --quiet HEAD -- # ignore errors here while we are using 'go get' above continue-on-error: true + e2e: + # The type of runner that the job will run on + runs-on: ubuntu-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + - name: Docker Build + run: docker-compose build + - name: Docker Compose Start + run: docker-compose up -d + - uses: actions/setup-go@v2 + with: + go-version: '1.15.6' + - name: CLI + run: .tests/e2e-test.sh diff --git a/tests/e2e-test.sh b/tests/e2e-test.sh new file mode 100755 index 0000000..443b63a --- /dev/null +++ b/tests/e2e-test.sh @@ -0,0 +1,9 @@ +#!/bin/bash +set -ex +testdir=$(dirname "$0") + +# Node +nodedir=${testdir}/node +go run ./cmd/cli/ upload \ + --artifact $(< ${nodedir}/url) --sha $(< ${nodedir}/sha) \ + --signature=${nodedir}/sig --public-key=${nodedir}/key diff --git a/tests/node/SHASUMS256.txt b/tests/node/SHASUMS256.txt new file mode 100644 index 0000000..2f9e03b --- /dev/null +++ b/tests/node/SHASUMS256.txt @@ -0,0 +1,32 @@ +e9630d01ee1ff74445e12ab2f14581b2aea9201eca05b39f8174697afdba74b2 node-v15.4.0-aix-ppc64.tar.gz +503d160016f6a61ec25a9462499721ef96b9ed08e232a420d17541774e079dda node-v15.4.0-darwin-x64.tar.gz +db5bfc430f865061bde1f6afe6d75fae98fc04b647050e9e7ad7444a44d790e0 node-v15.4.0-darwin-x64.tar.xz +2e0efc6931f30e6d8ba1cdde018ae234bd6186b3f38ce8a94a8304f4340fbd2f node-v15.4.0-headers.tar.gz +cf1f16dbda084ac8102b2faeb2608bd3d3541311281ba8869da06649f8099dba node-v15.4.0-headers.tar.xz +0dad2932f7f7e0fc21bca0690d31f065080dbbf448527e982447355ff4bb91bd node-v15.4.0-linux-arm64.tar.gz +1b2b601167f6e07bb9b2bb86774bc386c5c60fac6ab28e49ad6d62f491be2b7f node-v15.4.0-linux-arm64.tar.xz +a36ecfa85ca2b6cfbb864190147a26c1fd2e04e15ab4b31b3a398663dc91223a node-v15.4.0-linux-armv7l.tar.gz +8912e375b96ef964db5c1ba100e3afedc13730d53570cbe7c0dd71e055afb1b4 node-v15.4.0-linux-armv7l.tar.xz +ebcc8c6819032fc02dee3214d61032c11cd9ecfc764613e8f7ed2cbe5afaabff node-v15.4.0-linux-ppc64le.tar.gz +6948bad4bcdac9b8f4f8b0a29b8eb89c0b09c39ded0bdd67e4a55a4c89c0af80 node-v15.4.0-linux-ppc64le.tar.xz +93ca0bf22bd0ee7a5f261a8235b0e8305873228e63c174bd15a77ce2d222c69f node-v15.4.0-linux-s390x.tar.gz +417ade49c5d9b15391fb47e5d95bc91b0da90977472f062905b22f1a4a027f4c node-v15.4.0-linux-s390x.tar.xz +96b801f51bf73330c65e6ee4d17c5b223fded16d8020af3b3550a548d271b1e2 node-v15.4.0-linux-x64.tar.gz +a1fc57a8aeeb2a175ca62718fdc0f896efc0f78695a7d4f56d5e8653a24b1a11 node-v15.4.0-linux-x64.tar.xz +4ee293f815395b1774895da79f02ae6bc5c158b93985a315db36b54f25f62c8c node-v15.4.0.pkg +b199796544d988b4bb61e38584cd097744e073fa0559cbec772858d91ce4649f node-v15.4.0.tar.gz +ba726955316c8190adc8e8c892d8782e7167643e41b22bb7c7aa4e092783e04e node-v15.4.0.tar.xz +343f603329de39f4019df9ef8ff7610d3e079bc397afd15560abf7bd9f60fafe node-v15.4.0-win-x64.7z +9bfd174d15cf38885740e3b2308e701f33d064bb1100afd59f8114298a89e4a7 node-v15.4.0-win-x64.zip +ac97daba712c7e5ae58d8cdd9e7e7a3103092efdaef0328b14e80bc046b21d86 node-v15.4.0-win-x86.7z +37d852eade26bfd262f62190f848265409e0de5d510753c158c619ed4897dd63 node-v15.4.0-win-x86.zip +0be3e8050feecc0546d81fc5884626e7ea1ed99a2c1fdcc96e246e59774d4809 node-v15.4.0-x64.msi +cee5d80302f0a4d29816cae05f80058e578c72d08caa36e19bd766a8bcd4a9cb node-v15.4.0-x86.msi +1a76edb3b10a006ea6108f318c9fa959fe1e692586bad90b3edfda4918f5fb69 win-x64/node.exe +8730c9880ba0237ec978c6bfb224e84390112980dc39daabb89f1148e9f9f81d win-x64/node.lib +b7e88f414378a776282586a0de4a6aa61869c647426e57466ee6fac3059cc760 win-x64/node_pdb.7z +c2618d56cd3a1cbf6b267c44b42f260082b3eb33b83944084a8e50425ba02fb2 win-x64/node_pdb.zip +f170feef25cf2f77be3f9c67c123f03999f913cfb6a04267df827ed0320fa1d1 win-x86/node.exe +5d6b151f6deaa4ca42b52e5333f467f2ae8f12dfa52715bf9f16562723fc996e win-x86/node.lib +60de0dc131697829439de285beef8dd31ad366cf6b183e5aac7467b098c38c21 win-x86/node_pdb.7z +fc102b969efdd8a335d039d13d39c4a174947395fa0a89569e7b7381b278238f win-x86/node_pdb.zip diff --git a/tests/node/key b/tests/node/key new file mode 100644 index 0000000000000000000000000000000000000000..7dedf2e7c569bcf39a441c290f4ac86f7c3ff98d GIT binary patch literal 1628 zcmb`Hdo<Gv0LQoAHq2O2-lh>{XkOP_nAJ5)R1A?c&v}d}$s^{GkdS%Bq{ozAiZE0o zL|%pRSPyrl(ZW(pO4+T>?c96LJ@>!+*Y|wCe}2B_`#l4ehI)H4%E1z#3MpQepD!mi zS&DT9Jz-mYZeq5?edsgVMRwI_2cJ09K5_Qj1LJAM0H=m&^4IB8xy&*<;^NxniFJfn z?P}8+M-&B@%2a*(iO#cXholt~;;=eMVP)~dzOuG%W!=kOX2)0-<LRt&n%?at(G4)- zoSqO9uPwO0W9wxvL!AaTiV_;$ZGEvx(YS<WCi#a8QwEzff#92vu_6__H$57J{)rk5 z>0?3;-@AbkzLEpfdU@5JLQ;^0ZuPZx+94saA@=H>mH6^jZsS<o)UqtUZDeDmg<=1W zS>q&J<frjBjGHD4(HJ3rr8O=xaW%?PQ;XoueSEE+8rjhV2FZXy;Ck(C<cN^K@bEx1 zE`UrugtjJsm-v9cLc3rpIV2qGA4#>z0=q%ieaB`4s6b!{xP&+$CMOA(KmbsA00IWo zz<>fxULC3mlQ?5+zpeUa49~3KeGn=mq2db+@C`-#!r;)NAR$N+zV=r>MG#-z+_mMQ zO1@h7ml%rDy;B3GPe~8-6km&B+XpWYFWB<3Z9Qb8YIil!;<J{VqrQ~_Iyd{Etr~X+ z2bxkqfFipa_iD|>BzBo?v`^Fv(RFPBRA(uRDSK5+Yf|$1;PIUaUmwaT81!HT8Aa`3 zv;8MQ7@hhO8JQwu6O?J)6vuMIUJF@bO9AcUC9HtLfS5zOgFJ#9FVjB0IO|h-M2Orh zF_^_;`aN;?f`o;Nd_(t(79`F5U3fEx>uf&MMWEdwLEzYR&dZpQrGtE!)GITeB3Eg< zVFMdguotPZiuoKKs6Npc2BOLBduPm=DVEMq(1f|0JBm>2-w6_);1=sKzgYhO|DFFY zi~Z^CD1p(DVKM(p0|)-yfM%cgs%3qE$T}^w8{yi^q$`_V(k0$cKP|b*Fxqb~Vr8c% zmzGa4;-v<qq%PsME-rYCjv8qdzs=WUhau?|I|j;!@w8=>vr}LZp3G;>E9(Q4Y6tt* zwtenKWpAu_eVH{7Lyw$#(gq~YRJ^>=q4_96wjd3swHWp37Ns3@{{5You-h})r*TJa z3-m*lTdPL!dU<jt4sd^N-tG+n7Oc}s1oKs_6?)V)<ZQ2NOYV51)d{WYLkrTaYhS__ zUm6P0U!NK76?ZKh2$t=fZwu_n>rzVW<#FPkUX1l&|Ndf>Ozao=nG5|kInQ6K8tE{c z*>lUHcT5mjhY_@Zp!Oe{|GtFg*fr_u?|gDr?snylEv}#YIN4Y6O<caJzy8|!%<cIv zhrOmJN$~VqBfU0~kaWAY8p(vx9eSZoT^%*Xu<PuuOVz;kj2RbTU)7;-c+4?<2znWh z6!7gaXLik%Fi69mTHPr_Gb{t8J9ZBtPs`S2Zify*boG_q9{z+rzDvn>BkEpgc58X( zfg4{d(ldINE~F!y843LK+_S=BkZTXqJ^3oOGbPj8?3n>KY5!w}!qN!_J?Z^BCy3@? zDPfvewNqz^#6}!wC22ay6;;@{#aOA=a#R&KZa7e7;R}B=^Hjp_!Z?n<n5VB?-SJVO zV`xHw&&gE-QvSF%lm7D(vcRTL#qUE$|L2;294Me7_0K6kh!7XWfVmb!Q<e9lVso0m zSob?%60PK>_ndBMTXU^=>J;FP?<<YZ9;_p+k)NKQoTIj$I9PgdF<5PGFaoccha2c| z^2pxesnhn`sxY|Pg5!~W#!hkSaLOYjBR4nl5iwGfrXJBx?{NyaQCNG+5;zZ&*{rVi zS%c6ZzjbBk0cNB*o~4|&msk0GHz_zZk)VN4;7%$Q-r;i#U|VelJSDWDB`$eLdTIx? za3__K%usS>(@`=LEnKBtQjR_cvV=hlXZr|&PJ7~*32f>)dMwE*K}`*PWmADzAanzx nzjIkviZ~~DCbhnTeBUkcZSq}})W=8f%x<F%`s10J)W$ynL1)~I literal 0 HcmV?d00001 diff --git a/tests/node/sha b/tests/node/sha new file mode 100644 index 0000000..c545c94 --- /dev/null +++ b/tests/node/sha @@ -0,0 +1 @@ +bc51ec78f8f290860c35cdd93ef3886b464ba5a535b2e6f2a80623439026bcd5 diff --git a/tests/node/sig b/tests/node/sig new file mode 100644 index 0000000000000000000000000000000000000000..e5c05c33f678dd8246b112bfc150b2d02d9dd02f GIT binary patch literal 310 zcmV-60m=S}0W$;u0SEvc79j*21qhilLPV&qb>%mb?`9o_d!70P0$<SE@&F165R&g^ z9fo_I`mpT>{yU!|{xufNy&(kLR4%9xvv(dE??h=RfLCR(S2>h%kvmf&LH?fPpW%9# zbg48%2JKY$@k@$_iqa7kbGdcBsI(ldTdFYZw)64P_{KT}2}g)+FgSgXx~`EiGYp=Q zM=s98{T|nMv}(x)BGd5T#OZl`^>1o>2cyP`@FB4`u^Y&6bcK8FutOR*<x|reJiYt# z!1lRQo`Zc{z$8(Hi;Oh&`_Kefp!#jnu7a^(qRoBc6POb!L8c<RT~0ZJi*P22&1g(x z>lF3JAHlLUM}9p8@bRJn8CQektOSro$lME#M51=(iUW}KyR4<m^v;%IF{c3%?Y<4c Is)<QnCP9^z*8l(j literal 0 HcmV?d00001 diff --git a/tests/node/sig.asc b/tests/node/sig.asc new file mode 100644 index 0000000..6f059a8 --- /dev/null +++ b/tests/node/sig.asc @@ -0,0 +1,46 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +e9630d01ee1ff74445e12ab2f14581b2aea9201eca05b39f8174697afdba74b2 node-v15.4.0-aix-ppc64.tar.gz +503d160016f6a61ec25a9462499721ef96b9ed08e232a420d17541774e079dda node-v15.4.0-darwin-x64.tar.gz +db5bfc430f865061bde1f6afe6d75fae98fc04b647050e9e7ad7444a44d790e0 node-v15.4.0-darwin-x64.tar.xz +2e0efc6931f30e6d8ba1cdde018ae234bd6186b3f38ce8a94a8304f4340fbd2f node-v15.4.0-headers.tar.gz +cf1f16dbda084ac8102b2faeb2608bd3d3541311281ba8869da06649f8099dba node-v15.4.0-headers.tar.xz +0dad2932f7f7e0fc21bca0690d31f065080dbbf448527e982447355ff4bb91bd node-v15.4.0-linux-arm64.tar.gz +1b2b601167f6e07bb9b2bb86774bc386c5c60fac6ab28e49ad6d62f491be2b7f node-v15.4.0-linux-arm64.tar.xz +a36ecfa85ca2b6cfbb864190147a26c1fd2e04e15ab4b31b3a398663dc91223a node-v15.4.0-linux-armv7l.tar.gz +8912e375b96ef964db5c1ba100e3afedc13730d53570cbe7c0dd71e055afb1b4 node-v15.4.0-linux-armv7l.tar.xz +ebcc8c6819032fc02dee3214d61032c11cd9ecfc764613e8f7ed2cbe5afaabff node-v15.4.0-linux-ppc64le.tar.gz +6948bad4bcdac9b8f4f8b0a29b8eb89c0b09c39ded0bdd67e4a55a4c89c0af80 node-v15.4.0-linux-ppc64le.tar.xz +93ca0bf22bd0ee7a5f261a8235b0e8305873228e63c174bd15a77ce2d222c69f node-v15.4.0-linux-s390x.tar.gz +417ade49c5d9b15391fb47e5d95bc91b0da90977472f062905b22f1a4a027f4c node-v15.4.0-linux-s390x.tar.xz +96b801f51bf73330c65e6ee4d17c5b223fded16d8020af3b3550a548d271b1e2 node-v15.4.0-linux-x64.tar.gz +a1fc57a8aeeb2a175ca62718fdc0f896efc0f78695a7d4f56d5e8653a24b1a11 node-v15.4.0-linux-x64.tar.xz +4ee293f815395b1774895da79f02ae6bc5c158b93985a315db36b54f25f62c8c node-v15.4.0.pkg +b199796544d988b4bb61e38584cd097744e073fa0559cbec772858d91ce4649f node-v15.4.0.tar.gz +ba726955316c8190adc8e8c892d8782e7167643e41b22bb7c7aa4e092783e04e node-v15.4.0.tar.xz +343f603329de39f4019df9ef8ff7610d3e079bc397afd15560abf7bd9f60fafe node-v15.4.0-win-x64.7z +9bfd174d15cf38885740e3b2308e701f33d064bb1100afd59f8114298a89e4a7 node-v15.4.0-win-x64.zip +ac97daba712c7e5ae58d8cdd9e7e7a3103092efdaef0328b14e80bc046b21d86 node-v15.4.0-win-x86.7z +37d852eade26bfd262f62190f848265409e0de5d510753c158c619ed4897dd63 node-v15.4.0-win-x86.zip +0be3e8050feecc0546d81fc5884626e7ea1ed99a2c1fdcc96e246e59774d4809 node-v15.4.0-x64.msi +cee5d80302f0a4d29816cae05f80058e578c72d08caa36e19bd766a8bcd4a9cb node-v15.4.0-x86.msi +1a76edb3b10a006ea6108f318c9fa959fe1e692586bad90b3edfda4918f5fb69 win-x64/node.exe +8730c9880ba0237ec978c6bfb224e84390112980dc39daabb89f1148e9f9f81d win-x64/node.lib +b7e88f414378a776282586a0de4a6aa61869c647426e57466ee6fac3059cc760 win-x64/node_pdb.7z +c2618d56cd3a1cbf6b267c44b42f260082b3eb33b83944084a8e50425ba02fb2 win-x64/node_pdb.zip +f170feef25cf2f77be3f9c67c123f03999f913cfb6a04267df827ed0320fa1d1 win-x86/node.exe +5d6b151f6deaa4ca42b52e5333f467f2ae8f12dfa52715bf9f16562723fc996e win-x86/node.lib +60de0dc131697829439de285beef8dd31ad366cf6b183e5aac7467b098c38c21 win-x86/node_pdb.7z +fc102b969efdd8a335d039d13d39c4a174947395fa0a89569e7b7381b278238f win-x86/node_pdb.zip +-----BEGIN PGP SIGNATURE----- + +iQEzBAEBCAAdFiEEHAUImTNCRKivdeU3ku9mHYZ7nfoFAl/Q2/IACgkQku9mHYZ7 +nfpQ8wgAig10JH3M183WHbDQU1b+snCg+q1yoUUVHF8qIfxG+fbsvz4/zTFIWe3J +cYlVoD4enJ5JE5/xOSJ1qeQnXTVD6CulGlzVFRCvs8909X6drLfx2NSAdKLZaoyw +n4hjYu6/71e/fBkJJU0bPXRD1INqPfofhVJ8G+E9ubIYPv1/E8Wn9VJK+3DOdRTN +W+VfBgTU6qDRVTsTDJTiQE6Rf5lIABKlgwBNuUF22GJm9Khcb0a/ewb8XZZo/Apf +RWv0+f/CecGJs8wU0E9TYqS0ne+CkBSsvzxbWY0KeKBTIcM/AQf+wPn3Ad5Fu6O1 +R7Up/RjbCQifD7LpLZJGO1VTYqciag== +=axYa +-----END PGP SIGNATURE----- diff --git a/tests/node/url b/tests/node/url new file mode 100644 index 0000000..a3f3c28 --- /dev/null +++ b/tests/node/url @@ -0,0 +1 @@ +https://nodejs.org/dist/v15.4.0/SHASUMS256.txt -- GitLab