From 62acef6dee5db5c51eaddd5dbdd5e4d3702aada1 Mon Sep 17 00:00:00 2001 From: Mickael KERJEAN Date: Fri, 26 Oct 2018 11:29:53 +1100 Subject: [PATCH] build (fix): fix build --- docker/dev/Dockerfile | 50 ------------------- docker/prod/Dockerfile | 19 ++++--- server/plugin/{image => image_light}/build.sh | 2 +- server/plugin/{image => image_light}/index.go | 2 +- .../plugin/{image => image_light}/lib/raw.c | 0 .../plugin/{image => image_light}/lib/raw.go | 0 .../plugin/{image => image_light}/lib/raw.h | 0 .../{image => image_light}/lib/resizer.c | 0 .../{image => image_light}/lib/resizer.go | 0 .../{image => image_light}/lib/resizer.h | 0 10 files changed, 13 insertions(+), 60 deletions(-) delete mode 100644 docker/dev/Dockerfile rename server/plugin/{image => image_light}/build.sh (86%) rename server/plugin/{image => image_light}/index.go (97%) rename server/plugin/{image => image_light}/lib/raw.c (100%) rename server/plugin/{image => image_light}/lib/raw.go (100%) rename server/plugin/{image => image_light}/lib/raw.h (100%) rename server/plugin/{image => image_light}/lib/resizer.c (100%) rename server/plugin/{image => image_light}/lib/resizer.go (100%) rename server/plugin/{image => image_light}/lib/resizer.h (100%) diff --git a/docker/dev/Dockerfile b/docker/dev/Dockerfile deleted file mode 100644 index f1f9576b..00000000 --- a/docker/dev/Dockerfile +++ /dev/null @@ -1,50 +0,0 @@ -FROM alpine:latest -MAINTAINER mickael.kerjean@gmail.com - -RUN mkdir -p /tmp/go/src/github.com/mickael-kerjean/ && \ - ################# - # Dependencies - apk --no-cache --virtual .build-deps add make gcc g++ curl nodejs git go npm && \ - mkdir /tmp/deps && \ - # libvips ####### - cd /tmp/deps && \ - curl -L -X GET https://github.com/libvips/libvips/releases/download/v8.7.0/vips-8.7.0.tar.gz > libvips.tar.gz && \ - tar -zxf libvips.tar.gz && \ - cd vips-8.7.0/ && \ - apk --no-cache add libexif-dev tiff-dev jpeg-dev libjpeg-turbo-dev libpng-dev librsvg-dev giflib-dev glib-dev fftw-dev glib-dev libc-dev expat-dev orc-dev && \ - ./configure && \ - make -j 6 && \ - make install && \ - # libraw ######## - cd /tmp/deps && \ - curl -X GET https://www.libraw.org/data/LibRaw-0.19.0.tar.gz > libraw.tar.gz && \ - tar -zxf libraw.tar.gz && \ - cd LibRaw-0.19.0/ && \ - ./configure && \ - make -j 6 && \ - make install && \ - ################# - # Prepare Build - cd /tmp/go/src/github.com/mickael-kerjean && \ - git clone --depth 1 https://github.com/mickael-kerjean/nuage && \ - cd nuage && \ - mkdir -p ./dist/data/ && \ - cp -R config ./dist/data/ && \ - ################# - # Compile Frontend - npm install && \ - npm rebuild node-sass && \ - NODE_ENV=production npm run build && \ - ################# - # Compile Backend - cd /tmp/go/src/github.com/mickael-kerjean/nuage/server && \ - CGO_LDFLAGS_ALLOW='-fopenmp' GOPATH=/tmp/go go get && \ - cd ../ && \ - GOPATH=/tmp/go go build -o ./dist/nuage ./server/main.go && \ - ################# - # Finalise the build - apk --no-cache add ca-certificates vim - -EXPOSE 8334 -WORKDIR "/tmp/go/src/github.com/mickael-kerjean/nuage" -ENV GOPATH /tmp/go diff --git a/docker/prod/Dockerfile b/docker/prod/Dockerfile index a5c5a693..9ffc3811 100644 --- a/docker/prod/Dockerfile +++ b/docker/prod/Dockerfile @@ -1,7 +1,10 @@ FROM alpine:latest MAINTAINER mickael.kerjean@gmail.com -RUN mkdir -p /tmp/go/src/github.com/mickael-kerjean/ && \ +ENV GOPATH /tmp/go +ENV CGO_LDFLAGS_ALLOW='-fopenmp' + +RUN mkdir -p $GOPATH/src/github.com/mickael-kerjean/ && \ ################# # Dependencies apk --no-cache --virtual .build-deps add make gcc g++ curl nodejs git go npm && \ @@ -25,7 +28,7 @@ RUN mkdir -p /tmp/go/src/github.com/mickael-kerjean/ && \ make install && \ ################# # Prepare Build - cd /tmp/go/src/github.com/mickael-kerjean && \ + cd $GOPATH/src/github.com/mickael-kerjean && \ git clone --depth 1 https://github.com/mickael-kerjean/nuage && \ cd nuage && \ mkdir -p ./dist/data/ && \ @@ -37,19 +40,19 @@ RUN mkdir -p /tmp/go/src/github.com/mickael-kerjean/ && \ NODE_ENV=production npm run build && \ ################# # Compile Backend - cd /tmp/go/src/github.com/mickael-kerjean/nuage/server && \ - CGO_LDFLAGS_ALLOW='-fopenmp' GOPATH=/tmp/go go get && \ - cd ../ && \ - GOPATH=/tmp/go go build -o ./dist/nuage ./server/main.go && \ + cd $GOPATH/src/github.com/mickael-kerjean/nuage/server && go get && cd ../ && \ + go build -o ./dist/nuage ./server/main.go && \ ################# # Compile Plugins - cd /tmp/go/src/github.com/mickael-kerjean/nuage/server/plugin && - cd image && ./build.sh && cd ../ && + mkdir -p ./dist/data/plugin && \ + go build -buildmode=plugin -o ./dist/data/plugin/image.so server/plugin/image_light/index.go && \ ################# # Finalise the build + cd $GOPATH/src/github.com/mickael-kerjean/nuage/ && \ apk --no-cache add ca-certificates && \ mv dist /app && \ cd /app && \ + rm -rf $GOPATH && \ rm -rf /tmp/* && \ apk del .build-deps diff --git a/server/plugin/image/build.sh b/server/plugin/image_light/build.sh similarity index 86% rename from server/plugin/image/build.sh rename to server/plugin/image_light/build.sh index 0fe78304..bbdf494e 100755 --- a/server/plugin/image/build.sh +++ b/server/plugin/image_light/build.sh @@ -1,3 +1,3 @@ -#!/bin/bash +#!/bin/sh go build -buildmode=plugin -o ../../../dist/data/plugin/image.so index.go diff --git a/server/plugin/image/index.go b/server/plugin/image_light/index.go similarity index 97% rename from server/plugin/image/index.go rename to server/plugin/image_light/index.go index 39acb0e6..478aba54 100644 --- a/server/plugin/image/index.go +++ b/server/plugin/image_light/index.go @@ -2,7 +2,7 @@ package main import ( . "github.com/mickael-kerjean/nuage/server/common" - "github.com/mickael-kerjean/nuage/server/plugin/image/lib" + "github.com/mickael-kerjean/nuage/server/plugin/image_light/lib" "io" "net/http" "os" diff --git a/server/plugin/image/lib/raw.c b/server/plugin/image_light/lib/raw.c similarity index 100% rename from server/plugin/image/lib/raw.c rename to server/plugin/image_light/lib/raw.c diff --git a/server/plugin/image/lib/raw.go b/server/plugin/image_light/lib/raw.go similarity index 100% rename from server/plugin/image/lib/raw.go rename to server/plugin/image_light/lib/raw.go diff --git a/server/plugin/image/lib/raw.h b/server/plugin/image_light/lib/raw.h similarity index 100% rename from server/plugin/image/lib/raw.h rename to server/plugin/image_light/lib/raw.h diff --git a/server/plugin/image/lib/resizer.c b/server/plugin/image_light/lib/resizer.c similarity index 100% rename from server/plugin/image/lib/resizer.c rename to server/plugin/image_light/lib/resizer.c diff --git a/server/plugin/image/lib/resizer.go b/server/plugin/image_light/lib/resizer.go similarity index 100% rename from server/plugin/image/lib/resizer.go rename to server/plugin/image_light/lib/resizer.go diff --git a/server/plugin/image/lib/resizer.h b/server/plugin/image_light/lib/resizer.h similarity index 100% rename from server/plugin/image/lib/resizer.h rename to server/plugin/image_light/lib/resizer.h