From 9767b908265d83a7832952b0185bb178830c6479 Mon Sep 17 00:00:00 2001 From: Jeroen van Baarsen Date: Wed, 6 Jan 2016 14:36:07 +0100 Subject: [PATCH] Make sure we ignore hidden files in the SSL cert check OSX creates hidden files: `./._server.key` and `./._server.crt`. The Dokku cert plugin is choking on those files. We should probably just ignore them, and go on with our lives Signed-off-by: Jeroen van Baarsen --- plugins/certs/commands | 4 ++-- tests/unit/10_certs.bats | 7 +++++++ tests/unit/osx_ssl_tarred.tar | Bin 0 -> 7680 bytes 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 tests/unit/osx_ssl_tarred.tar diff --git a/plugins/certs/commands b/plugins/certs/commands index cd5685792..82f62ccb4 100755 --- a/plugins/certs/commands +++ b/plugins/certs/commands @@ -39,7 +39,7 @@ certs_set() { cd $TEMP_DIR tar xvf - <&0 - CRT_FILE_SEARCH=$(find . -type f -name "*.crt") + CRT_FILE_SEARCH=$(find . -not -path '*/\.*' -type f -name "*.crt") CRT_FILE_COUNT=$(printf "%s" "$CRT_FILE_SEARCH" | grep -c '^') if [[ $CRT_FILE_COUNT -lt 1 ]]; then dokku_log_fail "Tar archive is missing .crt file" @@ -49,7 +49,7 @@ certs_set() { CRT_FILE=$CRT_FILE_SEARCH fi - KEY_FILE_SEARCH=$(find . -type f -name "*.key") + KEY_FILE_SEARCH=$(find . -not -path '*/\.*' -type f -name "*.key") KEY_FILE_COUNT=$(printf "%s" "$KEY_FILE_SEARCH" | grep -c '^') if [[ $KEY_FILE_COUNT -lt 1 ]]; then dokku_log_fail "Tar archive is missing .key file" diff --git a/tests/unit/10_certs.bats b/tests/unit/10_certs.bats index f127a66f1..a827ad6c9 100644 --- a/tests/unit/10_certs.bats +++ b/tests/unit/10_certs.bats @@ -38,6 +38,13 @@ teardown() { assert_success } +@test "(certs) certs:add < tar should ignore OSX hidden files" { + run bash -c "dokku certs:add $TEST_APP < $BATS_TEST_DIRNAME/osx_ssl_tarred.tar" + echo "output: "$output + echo "status: "$status + assert_success +} + @test "(certs) certs:info" { run bash -c "dokku certs:add $TEST_APP < $BATS_TEST_DIRNAME/server_ssl.tar && dokku certs:info $TEST_APP" echo "output: "$output diff --git a/tests/unit/osx_ssl_tarred.tar b/tests/unit/osx_ssl_tarred.tar new file mode 100644 index 0000000000000000000000000000000000000000..0d72adc26ecf2ebb200e36b987f4d8de0e81fc9e GIT binary patch literal 7680 zcmeI0$+GLnaX{~r!(kiVXk)MMMk~a-mlsNukdOO5zv_69j=h!w8PR*wZuoRib(0bR4enWex3=UD~X9 zbMv$As+Q-U_1|7TCIWw&P4<*@RXJQ?_@6%f?AxEa$LqEGB?L{= z^fF{sK9oh1rHAZtE%WjaU$d9h2b8u`Q?+sW(jB{h$jd7G6^URtMN{;vVK&G0BdEvE zt)=np&wuenUjO=U<2BB;efaQ6KK;da@_X@{9$KFe&6!Y0}ndhye_>3n!YeM*X2QU;xXeWhb7>#3Wfx(pXhB|G% zoy{KUQ++cC+{W7G24hRBYo`Of7SoyWk_$_mTI-Yo0N)1 zS@}}WDJgiPD?MYtkK(@oaftlFX3zs(6Ll;jNw5X1B>oR;kg(horST;awv8S)nvFK z*$U6t49m1@ve{Op&k!`W(g_Eb8*m+4**j<6<<0+|FCP>!CexsvDnYu&J;0WN`#@T+XNC7Hn`;n&O- zqSsB}fp&>_$(>7|vH&y0OPul;niXK(Z6rdX`_Ux~5malLQ0~=fV-ji_fpKB08()A- zZwar{wJ00aAx;c{1!P|_0#}3r1MXn9*oam%IHy=gZ*2+H(3LJua|yHY|4`r zHr}YC?!{s|1xVbhJW`67#yg^=8X<}h--(o#RaAOYP5ZrKvzOyx0q^*BKIW2M6d5UR zLKfsVm%V5M=L5lABAN8WqQ0X{R$mNUgK7!SxtZZzD#-=4jVzFt@l8huFp{g1gq&X^ z#+xVs@`8r6tV0}#2?oG1lT5!aC!p_=_27=3+I zds7TmQ%Kw+R^dxmZ#6wf_jv|G`*9m48q^#^(lpXb+YQ%~r0yJXyTxYLgd%{BLbD+? z@C;D{f#g{`rL%}4$b4U@QLa9uMqf|uLiMp)dHaB#@*VAhQscmo7nqn=t$wnX7R z(`1)&2wyT9S-NJM?M?`%UfD4)IBISWP-kZOF_9Il$S=*oHwCE%0;yNFchK3oJcJ^U zqU_q1?O`JiT8;|@(zjqziqwmJ?@g$jTmB5~vul|pmZ^);RyD) z6i;_8AVoV`-<9fsXo(-LZ_Yab*~V>Vn&gb85-t@x*$vJ>fZy2zR_txVcPb1wVYm-0 z{>oV*i`B{)X@(`6w1VX>c3Pi)yn#sEwlgu@^-!%VB(Mi18gij&h$DiG<^8xR<9>${ z$|Y#;+bEd_!bg+E_Q_xx^Y{Poj`d`h!%Mbi_xI9kSU!nbx z^WVyUpP&EmPy9!`^WRrkiXXfD68`(mYWCp2fBUid?;H7y{~i_(&il_ddf)Tkzx)LL z8&@A+#(&-yk=jq-zXv*gIRGY~Ci@2g@VCDUfQKIgpg=Jg!7%Vgl)+X2BvuM!M3MUl zZ!n4wIi98%;Y~*W#O`TVEb&ah z7N!rdjA8ItilqxtWs-P3NOPsv<}LACgP(i+ z!w%OdU1j3!P}SNVM!5ZvXGgl!D%QGT5Z7AMCOi=rrGmC7mG7}kM)iOe z7O*>@TGiqFX<&H@Kpm&8M0@bc2<@T4#s&dn59XZFHwNZ&EZrAj=R18-%J~ISU96Df zI0BRQ7D9R{u|Qah9bM9Tds@%D-UM>6b1r%=+U5j8+`!4dfwsoXcNS4BV>#)h(EIJk zc-mQWFzikP{yZ{!NIG_Q!3)q-nC$K{g7O@gv3H%)L!*esNMIw+o;hX`7$!DtL%=85 z4td{!Er4Z1LDbZVL?Ii@?HRN!6_1w^iK0MCqrzZmi9vR$GTEWQ#>`t?;CGan=~Y>n zY|&VsHzudwuDkf%vakPIuHlwXV&vw=sx(~S%BPnD_f=$&svT=nIB+=#Zq^a28nzZhC zLO)<)G*tKcV2Jh>&}A9BG1^EtB*X;puYNes|LE26lioq^%I_I?&%k>I-ZSujpMn1Z D{