update dockerfile web target
Rust / Run tests (push) Failing after 56s
Details
Docker / Build and push builder images (web-dependencies) (push) Successful in 8m13s
Details
Docker / Build and push builder images (rust-builder) (push) Successful in 11m37s
Details
Docker / Build and push service images (bot) (push) Successful in 9m56s
Details
Docker / Build and push service images (database) (push) Successful in 10m11s
Details
Docker / Build and push service images (web) (push) Successful in 10m36s
Details
Rust / Run tests (push) Failing after 56s
Details
Docker / Build and push builder images (web-dependencies) (push) Successful in 8m13s
Details
Docker / Build and push builder images (rust-builder) (push) Successful in 11m37s
Details
Docker / Build and push service images (bot) (push) Successful in 9m56s
Details
Docker / Build and push service images (database) (push) Successful in 10m11s
Details
Docker / Build and push service images (web) (push) Successful in 10m36s
Details
This commit is contained in:
parent
88d0e6f2a0
commit
ca59f72429
|
@ -52,9 +52,9 @@ jobs:
|
||||||
${{ env.GITEA_REGISTRY }}/${{ env.GITEA_REPOSITORY }}
|
${{ env.GITEA_REGISTRY }}/${{ env.GITEA_REPOSITORY }}
|
||||||
${{ env.GH_REGISTRY }}/${{ env.GH_REPOSITORY }}
|
${{ env.GH_REGISTRY }}/${{ env.GH_REPOSITORY }}
|
||||||
tags: |
|
tags: |
|
||||||
type=semver,pattern=web-builder-latest
|
type=semver,pattern=web-dependencies-latest
|
||||||
type=semver,pattern=web-builder-{{version}}
|
type=semver,pattern=web-dependencies-{{version}}
|
||||||
type=semver,pattern=web-builder-{{major}}.{{minor}}
|
type=semver,pattern=web-dependencies-{{major}}.{{minor}}
|
||||||
flavor: |
|
flavor: |
|
||||||
latest=false
|
latest=false
|
||||||
|
|
||||||
|
@ -64,12 +64,12 @@ jobs:
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
push: true
|
push: true
|
||||||
target: web-builder
|
target: web-dependencies
|
||||||
cache-to: type=inline
|
cache-to: type=inline
|
||||||
cache-from: |
|
cache-from: |
|
||||||
type=registry,ref=${{ env.GITEA_REPOSITORY }}:web-builder-latest
|
type=registry,ref=${{ env.GITEA_REPOSITORY }}:web-dependencies-latest
|
||||||
type=registry,ref=${{ env.GITEA_REGISTRY }}/${{ env.GITEA_REPOSITORY }}:web-builder-latest
|
type=registry,ref=${{ env.GITEA_REGISTRY }}/${{ env.GITEA_REPOSITORY }}:web-dependencies-latest
|
||||||
type=registry,ref=${{ env.GH_REGISTRY }}/${{ env.GH_REPOSITORY }}:web-builder-latest
|
type=registry,ref=${{ env.GH_REGISTRY }}/${{ env.GH_REPOSITORY }}:web-dependencies-latest
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ jobs:
|
||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
target: [rust-builder, web-builder]
|
target: [rust-builder, web-dependencies]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
|
|
20
Dockerfile
20
Dockerfile
|
@ -42,22 +42,30 @@ CMD [ "/database" ]
|
||||||
# * Build the web *
|
# * Build the web *
|
||||||
# ********************************
|
# ********************************
|
||||||
|
|
||||||
FROM node:18-slim as web-builder
|
FROM node:18-slim as web-dependencies
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
COPY frontend/ ./
|
COPY frontend/package.json frontend/.npmrc ./
|
||||||
|
|
||||||
RUN npm install
|
RUN npm install
|
||||||
RUN npm run build
|
|
||||||
|
|
||||||
FROM node:18-alpine3.18 as web
|
FROM node:18-alpine3.18 as web
|
||||||
|
|
||||||
|
WORKDIR /tmp/app
|
||||||
|
|
||||||
|
COPY frontend/ ./
|
||||||
|
|
||||||
|
COPY --from=web-dependencies /app/node_modules ./node_modules
|
||||||
|
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
COPY --from=web-builder /app/build ./build
|
RUN mv /tmp/app/build /tmp/app/node_modules /tmp/app/package.json .
|
||||||
COPY --from=web-builder /app/node_modules ./node_modules
|
RUN rm -rf /tmp/app
|
||||||
COPY --from=web-builder /app/package.json /app/package-lock.json ./
|
|
||||||
|
COPY --from=web-dependencies /app/package-lock.json ./
|
||||||
|
|
||||||
ENV DOTENV_CONFIG_PATH=/app/config/.env
|
ENV DOTENV_CONFIG_PATH=/app/config/.env
|
||||||
|
|
||||||
|
|
22
Justfile
22
Justfile
|
@ -2,7 +2,7 @@ set shell := ["zsh", "-uc"]
|
||||||
|
|
||||||
base_img_name := "datahearth/tech-bot"
|
base_img_name := "datahearth/tech-bot"
|
||||||
gitea_img_name := "gitea.antoine-langlois.net/" + base_img_name
|
gitea_img_name := "gitea.antoine-langlois.net/" + base_img_name
|
||||||
all_targets := "rust-builder web-builder bot web database"
|
all_targets := "rust-builder web-dependencies bot web database"
|
||||||
|
|
||||||
alias b := build
|
alias b := build
|
||||||
alias p := push
|
alias p := push
|
||||||
|
@ -10,32 +10,32 @@ alias ba := build-all
|
||||||
alias pa := push-all
|
alias pa := push-all
|
||||||
|
|
||||||
build TARGET:
|
build TARGET:
|
||||||
@docker build -t {{base_img_name}}:{{TARGET}} \
|
@docker build -t {{base_img_name}}:{{TARGET}}-latest \
|
||||||
--target {{TARGET}} \
|
--target {{TARGET}} \
|
||||||
--cache-to type=inline \
|
--cache-to type=inline \
|
||||||
--cache-from type=registry,ref={{base_img_name}}:{{TARGET}} .
|
--cache-from type=registry,ref={{base_img_name}}:{{TARGET}}-latest .
|
||||||
@docker tag {{base_img_name}}:{{TARGET}} {{gitea_img_name}}:{{TARGET}}
|
@docker tag {{base_img_name}}:{{TARGET}}-latest {{gitea_img_name}}:{{TARGET}}-latest
|
||||||
|
|
||||||
push TARGET: (build TARGET)
|
push TARGET: (build TARGET)
|
||||||
@docker push {{base_img_name}}:{{TARGET}}
|
@docker push {{base_img_name}}:{{TARGET}}-latest
|
||||||
@docker push {{gitea_img_name}}:{{TARGET}}
|
@docker push {{gitea_img_name}}:{{TARGET}}-latest
|
||||||
|
|
||||||
build-all:
|
build-all:
|
||||||
#!/usr/bin/env zsh
|
#!/usr/bin/env zsh
|
||||||
for target in {{all_targets}}; do
|
for target in {{all_targets}}; do
|
||||||
echo "Building $target";
|
echo "Building $target";
|
||||||
docker build -t {{base_img_name}}:$target \
|
docker build -t {{base_img_name}}:$target-latest \
|
||||||
--target $target \
|
--target $target \
|
||||||
--cache-to type=inline \
|
--cache-to type=inline \
|
||||||
--cache-from type=registry,ref={{base_img_name}}:$target .;
|
--cache-from type=registry,ref={{base_img_name}}:$target-latest .;
|
||||||
|
|
||||||
docker tag {{base_img_name}}:$target {{gitea_img_name}}:$target;
|
docker tag {{base_img_name}}:$target-latest {{gitea_img_name}}:$target-latest;
|
||||||
done
|
done
|
||||||
|
|
||||||
push-all: build-all
|
push-all: build-all
|
||||||
#!/usr/bin/env zsh
|
#!/usr/bin/env zsh
|
||||||
for target in {{all_targets}}; do
|
for target in {{all_targets}}; do
|
||||||
echo "Pushing $target";
|
echo "Pushing $target";
|
||||||
docker push {{base_img_name}}:$target;
|
docker push {{base_img_name}}:$target-latest;
|
||||||
docker push {{gitea_img_name}}:$target;
|
docker push {{gitea_img_name}}:$target-latest;
|
||||||
done
|
done
|
||||||
|
|
Loading…
Reference in New Issue