diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..75d1871 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.cuddle/ diff --git a/cuddle.yaml b/cuddle.yaml new file mode 100644 index 0000000..b51aa6f --- /dev/null +++ b/cuddle.yaml @@ -0,0 +1,11 @@ +# yaml-language-server: $schema=https://git.front.kjuulh.io/kjuulh/cuddle/raw/branch/main/schemas/base.json + +base: "git@git.front.kjuulh.io:kjuulh/cuddle-base.git" +vars: + registry: "kasperhermansen" + +scripts: + build_release: + type: shell + run_release: + type: shell diff --git a/scripts/build_release.sh b/scripts/build_release.sh new file mode 100755 index 0000000..6249859 --- /dev/null +++ b/scripts/build_release.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +echo "building docker image" + +tag="$REGISTRY/$SERVICE:${COMMIT_SHA:0:10}" + +if [[ -n $DEBUG ]] +then + echo "debug:" + echo " REGISTRY: $REGISTRY" + echo " SERVICE: $SERVICE" + echo " COMMIT_SHA: $COMMIT_SHA" + echo " TMP: $TMP" +fi + +docker build -t "$tag" -f "$TMP/build_release.Dockerfile" . diff --git a/scripts/run_release.sh b/scripts/run_release.sh new file mode 100755 index 0000000..d22c63d --- /dev/null +++ b/scripts/run_release.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +set -e + +echo "prebuiliding docker image" + +cuddle_cli x build_release + +echo "running docker image" + +tag="$REGISTRY/$SERVICE:${COMMIT_SHA:0:10}" + +container_id=$(docker run -d "$tag") + +sleep 5s + +docker logs "$container_id" + +echo "removing image" +docker stop "$container_id" > /dev/null && docker rm "$container_id" > /dev/null diff --git a/templates/build_release.Dockerfile b/templates/build_release.Dockerfile new file mode 100644 index 0000000..edc0901 --- /dev/null +++ b/templates/build_release.Dockerfile @@ -0,0 +1,13 @@ +FROM node:16.6-alpine as base +RUN pnpm i --global vite + +FROM node:16.6-alpine as builder + +WORKDIR /app/ + +COPY package.json . +COPY pnpm-lock.yaml . + +RUN cargo build + +CMD [ "cargo", "run" ]