mirror of https://github.com/Squidex/squidex.git
2 changed files with 62 additions and 0 deletions
@ -0,0 +1,11 @@ |
|||||
|
# Build the image |
||||
|
docker build . -t squidex-build-image -f dockerfile.build |
||||
|
|
||||
|
# Open the image |
||||
|
docker create --name squidex-build-container squidex-build-image |
||||
|
|
||||
|
# Copy the output to the host file system |
||||
|
docker cp squidex-build-container:/out ./publish |
||||
|
|
||||
|
# Cleanup |
||||
|
docker rm squidex-build-container |
||||
@ -0,0 +1,51 @@ |
|||||
|
FROM microsoft/aspnetcore-build:1.1.2 |
||||
|
|
||||
|
# Install runtime dependencies |
||||
|
RUN apt-get update \ |
||||
|
&& apt-get install -y --no-install-recommends ca-certificates bzip2 libfontconfig \ |
||||
|
&& apt-get clean \ |
||||
|
&& rm -rf /var/lib/apt/lists/* |
||||
|
|
||||
|
# Install official PhantomJS release |
||||
|
RUN set -x \ |
||||
|
&& apt-get update \ |
||||
|
&& apt-get install -y --no-install-recommends \ |
||||
|
&& mkdir /srv/var \ |
||||
|
&& mkdir /tmp/phantomjs \ |
||||
|
# Download Phantom JS |
||||
|
&& curl -L https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 | tar -xj --strip-components=1 -C /tmp/phantomjs \ |
||||
|
# Copy binaries only |
||||
|
&& mv /tmp/phantomjs/bin/phantomjs /usr/local/bin \ |
||||
|
# Create symbol link |
||||
|
# Clean up |
||||
|
&& apt-get autoremove -y \ |
||||
|
&& apt-get clean all \ |
||||
|
&& rm -rf /tmp/* /var/lib/apt/lists/* |
||||
|
|
||||
|
RUN phantomjs --version |
||||
|
|
||||
|
COPY src/Squidex/package.json /tmp/package.json |
||||
|
RUN cd /tmp \ |
||||
|
&& npm install \ |
||||
|
&& npm rebuild node-sass |
||||
|
|
||||
|
COPY . . |
||||
|
|
||||
|
WORKDIR / |
||||
|
|
||||
|
# Build Frontend |
||||
|
RUN cp -a /tmp/node_modules /src/Squidex/ \ |
||||
|
&& cd /src/Squidex \ |
||||
|
&& npm run test:coverage \ |
||||
|
&& npm run build:copy \ |
||||
|
&& npm run build |
||||
|
|
||||
|
# Test Backend |
||||
|
RUN dotnet restore \ |
||||
|
&& dotnet test tests/Squidex.Infrastructure.Tests/Squidex.Infrastructure.Tests.csproj \ |
||||
|
&& dotnet test tests/Squidex.Core.Tests/Squidex.Core.Tests.csproj \ |
||||
|
&& dotnet test tests/Squidex.Read.Tests/Squidex.Read.Tests.csproj \ |
||||
|
&& dotnet test tests/Squidex.Write.Tests/Squidex.Write.Tests.csproj |
||||
|
|
||||
|
# Publish |
||||
|
RUN dotnet publish src/Squidex/Squidex.csproj --output /out/ --configuration Release |
||||
Loading…
Reference in new issue