From d7249725e48ce68156bcef030c70c83834746938 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Sat, 9 Dec 2023 02:13:53 +0100 Subject: [PATCH] CI --- .drone.jsonnet | 93 +++++++++++++++++++++++++++++++++++++++++++++++++ bun.lockb | Bin 25470 -> 20853 bytes package.json | 3 +- 3 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 .drone.jsonnet diff --git a/.drone.jsonnet b/.drone.jsonnet new file mode 100644 index 0000000..8b33506 --- /dev/null +++ b/.drone.jsonnet @@ -0,0 +1,93 @@ +local bun_image = "oven/bun:1"; + + +local fetch_step = { + name: "fetch", + image: "alpine/git", + commands: ["git fetch --tags"], +}; + +local install_step = { + name: "install", + image: bun_image, + commands: ["bun install --frozen-lockfile"], +}; + +local lint_step = { + name: "lint", + image: bun_image, + commands: ["bun lint:tsc"], +}; + +local generate_docker_tags_step = { + name: "generate-docker-tags", + image: "git.jvalver.de/thilawyn/drone-better-docker-autotag", +}; + + +[ + // Lint the whole project when not in master, not in a PR nor on a tag + { + kind: "pipeline", + type: "docker", + name: "lint", + + trigger: { + ref: { + exclude: [ + "refs/heads/master", + "refs/pull/**", + "refs/tags/**", + ] + } + }, + + steps: [ + install_step, + lint_step, + ], + }, + + // Build the server and legacy API docker images without publishing them for pull requests + // { + // kind: "pipeline", + // type: "docker", + // name: "build-docker", + + // trigger: { + // ref: { + // include: ["refs/pull/**"] + // } + // }, + + // steps: [ + // fetch_step, + // generate_docker_tags_step, + // build_website_docker_step(false), + // build_legacy_api_docker_step(false), + // ], + // }, + + // Build the server and legacy API docker images and publish them for master and tags + // { + // kind: "pipeline", + // type: "docker", + // name: "build-publish-docker", + + // trigger: { + // ref: { + // include: [ + // "refs/heads/master", + // "refs/tags/**", + // ] + // } + // }, + + // steps: [ + // fetch_step, + // generate_docker_tags_step, + // build_website_docker_step(true), + // build_legacy_api_docker_step(true), + // ], + // }, +] diff --git a/bun.lockb b/bun.lockb index 2d025d288aef085c8e8875461f05687ca23df81f..ada479ec1da18794383ac5e5eddefbc73b9585e2 100755 GIT binary patch delta 1994 zcmds2Z)jUp6u9P zQirn{!=ZtR^}ui|j&3Lp+y_f6E7}iE-N5Qli^34KRvh?eA0|{8$U1)~Z9o`)^OF~T z_s1{yoO924x%b@VE6N||lvj)z>Y}yL%M0g^pKd6;)Gf9@_~p+fBGu5_uWS_D9o9 zBl28oH0!Gz+HT(}|H`GL-ITp*nl7rO>8AWsr6_2pMoHaN-$YLL!Clh0JtTkCNOPFd zXQL=6Zlffq!A^6aBX-jAO!Ym~#|~@QL0y7sh00F5`*oVjGv$Czn$wgMIz>T0>XZcS zchH>ER6j?#Tj8Lj9c+0Nb(yjwkCLF{c{B&QmPcB?DNCFb1wG=VB`c$A7^bw<8_x-xk zYh^m+RK=8H>aDWqMW0U7P^F|)TePWMr~c}g;-e|3pP@W8F{OgyH5R>Aq0?okDsuTP zid5?Kj6bH-&?Tr_P!+W?rIrrXT6Dfjr>~*vskF|bhpKgYp)RI0(3eoTH9ED_$CM^I zT5r(|)ODy}s>ygu(g)eu^jTAG&eOO*IxQOesV(4@y^hqbK%q^mZeIEGw>HzwsGGju z<}X~nvod%g2t2-O(%eEl?PU~c8{W$&uMKDiHUXOf+*Gjz;B#CL7(fFM05}XsX#x0N z@Y(14z$ZEk;9iRmu!jvW23vV6B}fO`3)(mc2P+4P0Q6Gf0oDWS0JJJ@Q(`skyNEt+ z?;K+XzKv+KX-1zDg#c&D8D}!$O?*HZPzu}&Yy^sd5`fog0Is3}r~)bh_Tx&MfJT7t z)g+gN@l;sQ#rx0Qqx3Z!n~Y#;Psi>oTI#CP!f5ZvK0zw^BYy1+B#Od=L46T#Yv!F8 zZ`gIBayq)qBq z^j3ZfGEd5HTjKFg0zE3{XfzwGjZK{nT1JFk2YI6bIqRV9QNMNtZv3Pjbx|VfEy_G7 zACC1b9$0w458eS3i0?SzqIaYI{5Q~b@#PaUd`K{Eg>gy~TD7?%zuS>I9Mja4=iveE EZ-wWI=l}o! delta 5005 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 GX8#+tSnc!x diff --git a/package.json b/package.json index 83ceb2a..54a9941 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,8 @@ "build": "rollup -c", "lint:tsc": "tsc --noEmit", "clean:cache": "rm -f tsconfig.tsbuildinfo", - "clean:dist": "rm -rf dist" + "clean:dist": "rm -rf dist", + "clean:node": "rm -rf node_modules" }, "dependencies": { "type-fest": "^4.8.3"