From f2fb2be45f7bed430654929fbd11a871d02a9678 Mon Sep 17 00:00:00 2001 From: pgoslatara Date: Mon, 15 Jul 2024 21:52:54 +0200 Subject: [PATCH] Migrate arg to artifacts-dir --- .github/workflows/ci_pipeline.yml | 8 ++++---- action.yml | 6 +++--- dbt_bouncer/main.py | 8 ++++---- dist/dbt-bouncer.pex | Bin 3554429 -> 3554450 bytes tests/test_logger.py | 4 ++-- tests/test_main.py | 15 ++++++--------- 6 files changed, 19 insertions(+), 22 deletions(-) diff --git a/.github/workflows/ci_pipeline.yml b/.github/workflows/ci_pipeline.yml index 613e47c2..8c198ba0 100644 --- a/.github/workflows/ci_pipeline.yml +++ b/.github/workflows/ci_pipeline.yml @@ -152,9 +152,9 @@ jobs: - name: Run e2e test run: | docker run --rm \ - --volume "$PWD/dbt_project":/dbt_project \ + --volume "$PWD/dbt_project/target":/dbt_project/target \ ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:ci \ - dbt-bouncer --dbt-project-dir dbt_project + dbt-bouncer --dbt-artifacts-dir dbt_project/target github-action-tests: needs: [pre-commit] @@ -168,7 +168,7 @@ jobs: - name: Run action uses: ./ with: - dbt-project-dir: dbt_project + dbt-artifacts-dir: dbt_project/target pex-tests: runs-on: ubuntu-latest @@ -211,4 +211,4 @@ jobs: run: poetry run pex . -c dbt-bouncer -o ./dist/dbt-bouncer.pex - name: Test pex file - run: ./dist/dbt-bouncer.pex --dbt-project-dir dbt_project + run: ./dist/dbt-bouncer.pex --dbt-artifacts-dir dbt_project/target diff --git a/action.yml b/action.yml index bc850188..4150898c 100644 --- a/action.yml +++ b/action.yml @@ -1,9 +1,9 @@ name: 'dbt-bouncer' description: 'Configure and enforce conventions for your dbt project.' inputs: - dbt-project-dir: + dbt-artifacts-dir: default: '.' - description: 'Directory where your dbt project is located.' + description: 'Directory where the dbt artifacts exists, generally the `target` directory inside a dbt project.' required: false runs: @@ -14,4 +14,4 @@ runs: shell: bash run: | ${{ github.action_path }}/dist/dbt-bouncer.pex \ - --dbt-project-dir ${{ inputs.dbt-project-dir }} + --dbt-artifacts-dir ${{ inputs.dbt-artifacts-dir }} diff --git a/dbt_bouncer/main.py b/dbt_bouncer/main.py index 8bc29e61..475b1c1f 100644 --- a/dbt_bouncer/main.py +++ b/dbt_bouncer/main.py @@ -10,17 +10,17 @@ @click.command() @click.option( - "--dbt-project-dir", - help="Directory where the dbt project exists.", + "--dbt-artifacts-dir", + help="Directory where the dbt artifacts exists, generally the `target` directory inside a dbt project.", required=True, type=click.Path(exists=True), ) @click.version_option() -def cli(dbt_project_dir): +def cli(dbt_artifacts_dir): logger.info(f"Running dbt_bouncer ({version()})...") # Load manifest - manifest_json_path = Path(dbt_project_dir) / "target/manifest.json" + manifest_json_path = Path(dbt_artifacts_dir) / "manifest.json" logger.info(f"Loading manifest.json from {manifest_json_path}...") if not manifest_json_path.exists(): raise FileNotFoundError(f"No manifest.json found at {manifest_json_path}.") diff --git a/dist/dbt-bouncer.pex b/dist/dbt-bouncer.pex index 5631dd57b16a88b72d56ad2638654a271d06afa1..8d09b88072118fd2f02ebb6769ef5ae631fee375 100755 GIT binary patch delta 9375 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 delta 9157 zcmZ8`2RxPS|G#tWy^bxLWRr7~9T75G_8!?Qn{doXcAPsagpj?-T)Q=A=-pPZMOxTRz?R_LpeKaLG4-RRxb#bdY91BYo4+~2M zw4f%JL^)g7y9l}Y)!y%QnGm69TIHu*QHDD$nkp!eJ8LOZAew0+6rb{^#@%?0SP&OE z-Y}8lGO8O|ylX}xWNZ7lI?sC4(aJ)?F6FC=&wxjx^8%jrm~Y;Lq;}=uo|S9w+dI(T z^$m7<$R2#|3w|8&u4uTtCyw7>&ivWEX_ffb9KNXH^hF%NIeYCNA8&zK_N-fbZTKb^Kwtud-25<;bqtu+3!T^oQd_fHbAnF9H-~#A#G6Af+Tf zFe39duk4&DPh`BYH5o&%zE|7H(bbSwH82A^b|z{joQ!9rvmshYabnIVc^e6n$jWrm~^iTvd-^wLvFXfhyY)1&!rq_nD_ z1nGEV(UZ5Yb|3Q>%oz&?&lLE)(UrlAk5d`Ru4$f)j@YcC57o}-h0U7Q9b~V|W|{Zq@A-}zUnf0oct2bh5+vc-CgjJ4F zpR(@0-~E^(!tXJphjJPBD#--tzPkgO*SE-?&dqzj_BJ$^PS}jkdfLGKqT0QbG?{-a z>^^a)#+|eGc^_R8g)}X-UF-Z8N&O%25*^gPqi)r(bQ{Pms_@)st<0NpZwNPKeX{kU zLx-&@um#KV4_>kKrkQFWi*3f!3i#-wAJJWBh_Q&QTa8QQPQQwWZu%_X$TZKLGH3C` z>IBe4qJJHU9Uc>$>Xx9>2NCO954U=QSjAw9W3xjEmr+=ehV`4AWdv6EMaIH5MW_p-B#8YRMS$?4!pna@?DZ7 zAjJ|jEp#KWSRrfPje_?{PlK0r*1D$mo%zXl_bPjj(J9upmt6gB?X&wzX|J3oX*1>+ zMt5d+3b2C*UU3PKrBvofg%M04lxR{u*B<3nE29qPhS*IWSGN15+8EY_pmbZ#PDF-~ za)VW5_f`+*3EK(Dgac%>Bc>jPcWF_o^ISBcK^<2yNzyX8{VPiU;($@s3uyp%3gS2RdDvA!F?A|0Fe z>>h^>oH96k=VN&LPi4IPlxd)Qdzgfqc<;*+iSy8W>YtakMx_Y}Zm9l{ zQ03O+Y-WoePfEy;GD2(N-+M-R?H(V_6a$_3J9|F!OtSIIZV6O+6N!sPt#zb_yxON+ zDAKv-ZrlA!Fej(Cxz%3qA@;)kLa}#v1zc`G38f@NN+H_IXAuuc27<*L*xdgs=&(IS$Sh z(PEC+o4gzqW?@yP)z!?4Kh|7s_%qiX#N4v_?(*FEttac93A9m0L5?%3abA8Z3rRn2 z`)j8kEc0tZ@C7V>e&;JIBR+EVOO;0N=Q`%`AeYz)@mN-g{u+@mhWbFn+E!c3R*L(^ zPUf)V_9#Vdfy)}mns`{3S+G}L%_O*^c)W1gC9v$_&%i&F%f7v}H=r zIS7aSu)xsC&g8I!0Nq!pDv5z4OBAnCK2ffM+b!J)!Z&SXuKT}`Crv@N6$8_tMb1rs zt6^@r7PaGr-d~kU@}r&KnE(79ZJ3@~TK4h+D}}8X$5CG2eYVBPSv%%g9xSjHJu>f$ zsVrr!?(`aq+F5Wtcu&4B`mtC3_AP821hmD@w;4MYUKuWf93ct|EB_J}7BM85nVsK1 zW@gY0G-+UVZxx_L?HAl`!`>?^XRlcE{^n(?pSCBK|K81G!!uG$#T)VCsg<8KcfxW_ zR`XI9THqVugZc^Zw@8Bi(sBP;E@$Qb$JW=h`1YnO74Dj^V~sbrB^l#oUE?!$95}Z- zBe-rx&b>=OG3_bxwaQm(B*lPt=a<#p@7z@IPqi&6`4&^s!$5sQi2ho!9Uf{tB_Y7_ zWxt-!GPmT;p{6W3*>dEYH%TQdr3QrR>^mJgV1h`2ry>bnc zKo6~!=qD)Vq%8}#l`HcM>C|LFs)fGBf39L<}<$5+SDpGt8TivdxyJizwlQE@c>hP!rV_Tr-hpmqjY*h-GbfM zQ^e*J72Ii2)o8d;n9Z3+>pDCT3t2=s;CRy-XPs{`JqM}0gpoG=65&A zs1R1)z>_MicO;u!31bM83|FALUgHI3yK}{mGFR-03W~Z;wi{cnRN9l3n@e2W7 z9MU0@_ZdGck%GGSr6|{0(|u3NImSlDGj+*Q`YF{1wiBA1TEqjjACFAN z+Q>-RN^lXzM#W{x@|AQ~>?{)-BuhW24Dv=Nmo?-9LXM70Wg%}RHaHY)7e3X`gth)q z2m>hnF6E>;nlTmT9UIW35N#dovZyw59d4c;&7l@XyXPaj4?CB+)D%*Q&Z`PAgL?Uy!(*%CC(!YvCqUKZU;wJ)1GdTVwWbrlxes}1y&DVx$%-hv|2h9 zrwWI0x8*&Y-EL4_tg1Z@?~u@w=8;-b7!HvXs79ree&^{gkvbFq*28C(E@Gdmuw(Gz zb?ytHUK$7u1ou-Zr{~TF>UkZGEv82NG${WwKx;r9_OzIMsJgeed$e1kessE+KG<2} z8S8EI>XAP#LyYdy1Hqh{Z=dqS9(_Z1D)32y(&%h_!PBQ}(<$Hl6)U{2)*6Kt7G^WG zBuUYha(57cv`JE7-|g%R>TQ>vP2iPXZJc3HM%mAl$UP^guiTCVy0HJ$7h^9_+owH~6=nDwS^)q6!1>-pl3KF|yc zNU3gmg0+V2#iMHdO%CYK|A`Kp37Vvq=Biv+oX7$ro z+&xsBdnU2z6zM(cJ#%h@J3z=2qSK#D@-aNG)raYe0lo_dbC;!No zEM9Ffb{|6RFy?MPR`=m$v-gNeVW>-K9=OG1u)-w8WOm(sWmxFxK+xJEUu;Ibi>(_v zgKSW+nJV|7_TbtWeazU6kLvgH8&{AvpASg--upO_bQ7qmxc)SJ^X1_CXjlL8s&OWX zI_eYRNt&+uo(CCruCRW>_4v?9+I0LXYAO6;)jlHnt6qBc1zN;kw-vs+#>HI4TDRdzwshyZj z)3;E%6E<$ude87{5QVJRa{O+Os;ew+fm_2jt=FR}BMIN&ZBfAs#fVlxBU_+*ueCPX=lA%8%a^|?eOJ|quS&VaCU53{f3c@QhMhWZITWTh z@mcBjE&*v#)Qrrdq5)PnQ-3?)C5JX=n$4X?sw6~*5z@gTMnAQv>$jU@T^=_=HI`9k zj7N?)5VtLtoVSFCRP_v|`{UB^l8#_2BMR>s8=#ypr1ZGKXwzWV0b%-?kebs-&}`aS z;klEfDwV`_x2o6NSW!O>=93O{JzDr|_)>_7+Lm9gTj!;}YdP4uIcdLTU;l)&Ts|Rq z8~5NV>qtPws$1CxX~JlO(!i_d3;kGL3wQe6Btme#W(4$Z@t9NZl3ruUQ2H5nzsnc( z{g!&TS1&>mUJ&58$?HENht2m;w(!Nt(Hqy|ocqn>curTGCbUo5lGK;R7}s;7^-kTI z$aQWr-Ts3^wO{#OZ=}JNexT>^^>mFP#QKUY2a-C2Oa`LyWEl;fJxPTQq=eI@n*_=YUtp#4m>)EjB2 z6EjlMOsMyWnHgR;rOoQXkTHG#wM!;`vj^W%yJzxi>3FHjoaGWWZTu*sF>fj0tHkrI z%_iEks;7O2bx%Vor*?3P^>ANx#C1QApNjvqe=?AIJa=M7HgJEnwkPW3UF_M5pwvrQ zpO(7`Pxz&^Yium323uEkQe}qkkt8zFdsS zK-L7yPpWIkiL&29nLf*%4-QXi?fH0ku+k=}9-3_|Zp`~3|B!1`jDY8?fx&iZqjTx3 z>CI7G-n@~a8eaR=AEg<1I4@FXh+mFq8ptP+%~vJ!@#r0+i}DMt+$VW&2kVNa3ZxSy zP!Mr(7wguRl-OnjWF~D&@1GNTX6Ji3-@e%_7Zhabqg5G=EZ! z``3EIfO{=YFDnj7jGbt*{=Ru;KdxfW`^1MS$DG%2`5jaaG#>5Q1XlB8_9w|)w7!3DwX`9J3Zs{324R!AgK{UYv{v|DJMXgRd3GhL@k zU;dOQxFq&HW#3wh-R`*!)}nHJsa5c6uNe12&nLG-N8&Y@USt~z zG)xn$zD!mI8`tv9V>##=1UeMm9yZ*G9)ESMw1CFZF-Gqvzex&iiol^WvZjx3KuDoN zfLg#xxTLE}1og9xW#0~KRv_Dax#Z~XX_skocB<0KoF|cy@-wc%hP1fxhLYmUM%u-x zmRnev!$Sih@c^xa_)n_DUYtJThz(nIGnFq&K zVyKZjN}aD^@zw*&K?BRuO?&nt;;z^@Z}&&uaxKoY{?+`Zx0CVu8ABt26CF_WJ3~|C z9cy0$Dk#g|j#EAOB+mBHatzUu2v6tYna*6qmq&%(q2FV?ZC2s)e2mMM2G!v`Ws_HW ze{9d)P-ZsT1wBB1%T09UEBg{j12Sxo@>P%hHx;Zsm_gKo7jrVBBV*Aeg#!^GeRR`1 z-$*P#ssNL*hWAr<%GFy}8~eV7%j(}6Np?0*ik5#oLY`Y$c2`z~(Tqa%L38dgPKiAA z>n?3ndeD(yGFEr!>jB4EAUU0Rnbwx64k%oAt%t&?2|2|bqE`;WLlRpYM*hSN{RTW} zuR8d~F^e*O`9l$lmm$WM9AS1JsKgZ)Xf68vhLf&Vnpbq!A1PGy+DNlUx1Y|HEFWHa zD$aAeVgH>`A6-D@Ox+op>O7j-hoY%lF{qSFb+u49Wn^%K38&JAIbuXgtNlrRlMmloZ zcC7_l+<3n|96f_}76Y3Vl+Zaj9xLDKXMT%LR{8i9avN!0`qqEaL*fy_$Nk|2f+{`Q z(zI;M&P|HR!AdeIu0^kLJc2~4N{W1T-#o$c#&$mMTCG;^IFQY-#&;BK@@eas=+wx| zHWu!ix47ItFM>+AA~b^S+k7G;t{p#+@EWJT8e}|yE#*ggbH478$?;3{Xd2F? z?T8wVi2IJESA|=eqrl~`Ig@sf{hNj)UM{;rNSy72N&kt@{Vecq2$F>7x>GcpZ7_+K z#M03GFmKZfYCxsTFz4+=u*h4t1g@aa8EbADtf+Z|%6RY zr<-%}uZDgMIaA+kbz_4q@Ne3`G1wU_YkT`vLcw&2to6Ai_y~J9<)-Y%NgUeUkZMz* z=fRpHHS@l1aXHd=bH21)zspf#_Ub*Q-vWPY?oWe#lEROq*?4>Db1lV>b$`o^oA+8w z1TnIpJ*5gz{dQU6O@tDifAsNdalN$JmMMq>7E18Zuu><6m~L_KK*Cd(GhPN}$8+D8 z!gbU4PwkSJYyDG=xU|^~Qo*M5jDYGRHp$3rN)isvQ4Tk^{NWw4Z6Ma0tZc4WTlCO+ zYER;^jV&IfH?no;Z2kA|yk@W7Hw4JW94{ee>09O~gR7cl<-+nm^LAS0*h9!i*2}`a zdt|&>9h=L)LSo`#S4X*)R%4QMiMrk|XlLFzq%M|sd9U?B@k{>ziK&)r=}j9h1Q`#f ztd@Hvy&`GOI*wAD1NKusmr*n=k8@7t8&nj1E&m-9us7Zqi<`SHuhZ}-Hqb8U&73Yj zFOK1CGpf^Y!=9+2A%Pt?cHjC%dia)KPB-n3b_#vO zi14g{CZhTX=K?D$kFZpi7o(O&-bJ$0d!iL1_#x)*1{Mx$&yR;r+JmO!o4e&F&-Ur; zUhf#%wx61jou#34n6p0pgrcdWOH23s13tW}4wHU1*A_N+Z0D`9)7Exe9Jf___v@Ke zj87KsmnZsFrY&XpBGHo;(;vsaZz8=AP44Uyrd!E;P9`+C@3278G$eCx(N1DQ#&L867_C8VwMhUVXAe~{#VEh5n5|(!UkOY5GlM{mIVk8Cg|9J@m z{Rj5XCod$22240WN`UA?q$pgO{(_*7kmA@q^yHug1Gx$qc!cD`7G}6$+ThtWfC41^ zgJi_c!AL5g(;uWLb`&$l9DRwL0NnhIqySGZj9CAA(EtD%(EAw42r~f_kCCD9Gq#lL z052$eg5-lMvtOiNu#=O3ndgEK2PBAsN9XB4OnRDwoEQvDha9_~A{pUQf)^I=PLUGu zuM!vOD`!YqII;9a+F6>M2<+g5+FE@ES*I(UtI2>o>{E&Y;0lXRsQ|3ur=}^Dz*SHU z28hC4!Y;}UgprehjWB=@F8=I7poas}@Iy@6C>d&B1~KGxESa2wqG2R6V6&(63|g>itZ@aMf3X<}S}7|g~2B;h;X{t*=6 zV!tlZ!MFetzJ^I_ZII)G8@N#WvNtX=HSnN9pH)D1B51to@t~dvhhqp6K17zAF$9GV z`LG(skR^OT3{E?OAsPe_asEp_k5G_;Ed-GJ`KiBN2+vzNeNM!{P(sM1`ph{&f)z6q z#22dz#3ce4VLc!l5j3VhmB2g1=S?Ak%B9`FkW0jX7)%qqO$>O$zpI{Wl4ue@1eOYl zk^nYv7A=ffuofjT_~r>T#UkZM5^$pjNe0V8lL9ud1L#`@%q4|7VSE>akpj{n4H+N~ z_qD)~Q!)S#j3I-vnQi`6B;j3;FvNo#nwS@lF~pPt8tZ&UfEs*~OZnefw8{O~KpHOm z8bi`wQ__L!6wrt~Y{Mv%ZIslYEhVH7bYql$N~kF(-!Md;3aabb1csbVK(>Z>=PQN^ zn)y&MkewdthzK>*QYB3csnDdt1B<93e>b!-3MB$ss2t!O1P}^eF~?|n7F6UQ8x3T& zW`j`-Y^i9#%yT6q3ZwjrqQVDBXd&e!4x>24Q!#<@=Sp-kM%kwY0C-ylhKOWRQG-Er zP2wBJN|7(o^8JHlY=Fh(hDHz5CjbJf0n8OSW z)e#c_!1_Q@X21pJ1ZFcsO`-xRExbfN%9IH4^k4{mV+Zt%QZOfF#__21*E znhWwRT!xXcxuN0IZ^n@3W@<{%2^*^aZ9DaU7eBfkWALY)nh;#$hB~AD1*2&209Roh zU@#Bh0QW+G?7UEK*)Br|K`jG@M4polMGW}`5ttCj#tT`;2V=DNyikYq!Z4&M3_$>j zT!AX6{Hr8ffx6gQjLAN{0@)guW5``1fFAVYgF5r02cvZJLAD&T7$U|Gh+$7*(SV|+ z)K|eYen0|y0r8iq)6fusYgzxym7oALSNwD!n;>u<3=)89kN!)J>1YTsw;BUI&3{K^ z@4~Iom;JzT_=b0}?X%PYl!FL~^IxK{sHvajaECt620JB8^eGsn&%C;1S zvi<)mBf`)Q1Ov~rZ9q>EXsa=SSt39NoFVL7vjy`+0X?|AC72@y*r2V%sX#9=$OtMe z24umH+Q92qf#>kY?dSOqKm~C?2F~>HUqS``uR~-=sM_ZL=KcJQqzB)g%X6RqQv~Xo zFnoRBKZ@iRaWe2m1=Myb3CKEO@c-t~fDIA=A9nRuaghBQw7sBPoC4&P1Q@ZghyO|! zm$~zK?~~5;Q;e<%T6H3+G3PtQHE1j&wZNQffX?}xFjE-+bEQJhnvkQ5tSFd2n0*b< z1%suaWwvIHF(;6QmI<#7hMdP1(*OSp_J3T}glyU%|9#zl`xXq2!2bW<4uZ4N01b|n z0}=}~3xdwB^V^5~{Ouv;LxFX2y$2ML0hloVYH7;=wD4^Y&{hWE#?uZ&LRS9|?9v9D diff --git a/tests/test_logger.py b/tests/test_logger.py index 445602d1..e0722380 100644 --- a/tests/test_logger.py +++ b/tests/test_logger.py @@ -12,7 +12,7 @@ def test_logger_debug() -> None: runner = CliRunner() runner.invoke( cli, - ["--dbt-project-dir", "dbt_project"], + ["--dbt-artifacts-dir", "dbt_project/target"], ) assert ( @@ -29,5 +29,5 @@ def test_logger_debug() -> None: def test_logger_info(caplog) -> None: runner = CliRunner() - runner.invoke(cli, ["--dbt-project-dir", "dbt_project"]) + runner.invoke(cli, ["--dbt-artifacts-dir", "dbt_project/target"]) assert "Running dbt_bouncer (0.0.0)..." in caplog.text diff --git a/tests/test_main.py b/tests/test_main.py index 29a7caec..742f9244 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -12,8 +12,8 @@ def test_cli_happy_path(caplog): runner.invoke( cli, [ - "--dbt-project-dir", - "dbt_project", + "--dbt-artifacts-dir", + "dbt_project/target", ], ) assert "Running dbt_bouncer (0.0.0)..." in caplog.text @@ -25,8 +25,8 @@ def test_cli_dbt_dir_doesnt_exist(): result = runner.invoke( cli, [ - "--dbt-project-dir", - "non-existent-directory", + "--dbt-artifacts-dir", + "non-existent-directory/target", ], ) assert type(result.exception) in [SystemExit] @@ -37,12 +37,9 @@ def test_cli_manifest_doesnt_exist(tmp_path): result = runner.invoke( cli, [ - "--dbt-project-dir", + "--dbt-artifacts-dir", tmp_path, ], ) assert type(result.exception) in [FileNotFoundError] - assert ( - result.exception.args[0] - == f"No manifest.json found at {tmp_path / 'target/manifest.json'}." - ) + assert result.exception.args[0] == f"No manifest.json found at {tmp_path / 'manifest.json'}."