]> Untitled Git - lemmy.git/commitdiff
Adding docker caching
authorDessalines <tyhou13@gmx.com>
Wed, 10 Apr 2019 18:10:57 +0000 (11:10 -0700)
committerDessalines <tyhou13@gmx.com>
Wed, 10 Apr 2019 18:10:57 +0000 (11:10 -0700)
Dockerfile
ui/fuse.js
ui/set_version.js [changed mode: 0644->0755]
ui/src/version.ts

index 3e4468dd2d0642fae304b0d360f678be1a47ae74..e2803851feffac09ac685a1573823ec042a397ea 100644 (file)
@@ -6,9 +6,34 @@ RUN yarn
 RUN yarn build
 
 FROM rust:1.33 as rust
-COPY server /app/server
+
+# create a new empty shell project
+WORKDIR /app
+RUN USER=root cargo new server
 WORKDIR /app/server
+
+# copy over your manifests
+COPY server/Cargo.toml server/Cargo.lock ./
+
+# this build step will cache your dependencies
+RUN  mkdir -p ./src/bin \
+  && echo 'fn main() { println!("Dummy") }' > ./src/bin/main.rs 
+RUN cargo build --release --bin lemmy
+RUN ls ./target/release/.fingerprint/
+RUN rm -r ./target/release/.fingerprint/server-*
+
+# copy your source tree
+# RUN rm -rf ./src/
+COPY server/src ./src/
+COPY server/migrations ./migrations/
+
+# build for release
+RUN cargo build --frozen --release --bin lemmy
+RUN mv /app/server/target/release/lemmy /app/lemmy
+
+# The output image
+# FROM debian:stable-slim
+# RUN apt-get -y update && apt-get install -y postgresql-client
+# COPY --from=rust /app/server/target/release/lemmy /app/lemmy
 COPY --from=node /app/ui/dist /app/dist
-RUN cargo build --release
-RUN mv /app/server/target/release/lemmy /app/
 EXPOSE 8536
index fe2c7664c3d05381f94cfb899560f02489a8e970..0fdf9a42801f154dbf50f753145ffcf74935b1b7 100644 (file)
@@ -11,7 +11,7 @@ const transformInferno = require('ts-transform-inferno').default;
 const transformClasscat = require('ts-transform-classcat').default;
 let fuse, app;
 let isProduction = false;
-var setVersion = require('./set_version.js').setVersion;
+// var setVersion = require('./set_version.js').setVersion;
 
 Sparky.task('config', _ => {
   fuse = new FuseBox({
@@ -42,7 +42,7 @@ Sparky.task('config', _ => {
   });
   app = fuse.bundle('app').instructions('>index.tsx');
 });
-Sparky.task('version', _ => setVersion());
+// Sparky.task('version', _ => setVersion());
 Sparky.task('clean', _ => Sparky.src('dist/').clean('dist/'));
 Sparky.task('env', _ => (isProduction = true));
 Sparky.task('copy-assets', () => Sparky.src('assets/*.svg').dest('dist/'));
old mode 100644 (file)
new mode 100755 (executable)
index bfd640c..2189308
@@ -7,3 +7,5 @@ exports.setVersion =  function() {
   let line = `export let version: string = "${revision}";`;
   fs.writeFileSync("./src/version.ts", line);
 }
+
+this.setVersion()
index 3f710072faf438e72b8fb1c408083718e262270c..c06ed5dd02285495e04295b7a9d08311f539a50f 100644 (file)
@@ -1 +1 @@
-export let version: string = "v0.0.2-0-gdae6651";
\ No newline at end of file
+export let version: string = "v0.0.2-9-g8e5a5d1";
\ No newline at end of file