diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..47cbba6 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,11 @@ +--- +kind: pipeline +type: docker +name: default + +steps: + - name: build + image: git.golem.linux.it/golem/gestionale-builder:1 + commands: + - script/build + diff --git a/.gitignore b/.gitignore index 6fdeb0e..1938a03 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ +build/ *.pro.user -build-* diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..846f103 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,11 @@ +FROM ubuntu:22.04 + +RUN useradd builder + +RUN apt update && apt upgrade -y && apt install -y \ + git \ + make \ + cmake \ + qtbase5-dev \ + g++ + diff --git a/README.md b/README.md index 5efaed9..85a8a68 100644 --- a/README.md +++ b/README.md @@ -23,9 +23,7 @@ On Debian/Ubuntu/Mint: * TODO # Build - $ cd $REPOSITORY - $ mkdir build-component - $ cd build-component - $ qmake ../component - $ make -j$(nproc) +``` +script/build +``` diff --git a/docker b/docker new file mode 100755 index 0000000..8412f3a --- /dev/null +++ b/docker @@ -0,0 +1,11 @@ +#!/bin/bash + +REPODIR=$(realpath $(dirname "$0")) + +docker run --rm -ti -u builder \ + -v "$REPODIR":/workspace \ + -v /tmp:/tmp \ + -w /workspace \ + gestionale-builder \ + "$@" + diff --git a/script/build b/script/build new file mode 100755 index 0000000..1c26054 --- /dev/null +++ b/script/build @@ -0,0 +1,10 @@ +#!/bin/bash + +REPODIR=$(realpath $(dirname "$0")/..) + +BUILDIR="$REPODIR"/build + +mkdir -p "$BUILDIR" +cmake -B "$BUILDIR" +make -j$(nproc) -C "$BUILDIR" + diff --git a/script/setup b/script/setup new file mode 100755 index 0000000..e1738d5 --- /dev/null +++ b/script/setup @@ -0,0 +1,6 @@ +#!/bin/bash + +REPODIR=$(realpath $(dirname "$0")/..) + +docker build -t git.golem.linux.it/golem/gestionale-builder:1 "$REPODIR" +